我如何 chmod 一个文件并在我传输它时让它在多台机器上持久存在?

How do I chmod a file and have it persist across multiple machines when I transfer it?

有一个 .sh 脚本,我想让整个团队都能够在他们自己的机器上使用。然后我注意到每次脚本新下载到机器时我都需要 chmod +x thescript.sh 在文件上。

有没有办法让 +x 权限即使在上传时也能保持不变,这样我就不需要继续 chmod 了?

编辑:澄清一下,当我将它附加到电子邮件然后下载到另一台机器时,+x 权限不会被保留。我没有尝试过一般上传它,但我假设它会有相同的行为。

您可以使用 -p 标志来保留文件权限:

cp -p src dest

rsync -p src dest

在安全方面,坚持 +x 会让病毒为所欲为。

或者,设置文件的正确权限,然后创建 zip 或 tar 存档。解压缩将保留文件权限。