我正在尝试编写bash脚本以使用lftp上传一些文件,并且需要将umask设置为002。我似乎无法弄清楚在lftp的上下文中如何完成此操作。
lftp -c "open sftp://$STAGE_FTP_HOST
user $STAGE_FTP_USER $STAGE_FTP_PASS
cd web/content
mirror -P --only-newer --reverse --delete --verbose --exclude wp-content/uploads --exclude wp-content/cache --exclude .git* "
我尝试在
/etc/pam.d/sshd
,~/.bashrc
和/etc/ssh/sshd_config
中设置umask,但没有任何效果。为了澄清,我需要向远程计算机上的文件和文件夹添加组权限。所以我需要775而不是755,而不是664,我需要664。
似乎需要特定于lftp进行某些设置,而我只是完全丢失了。
最佳答案
lftp命令chmod -R g+w .
应该执行您需要的操作(更改远程服务器上的权限)。
对于新上传的文件,如果本地权限正确,mirror --no-umask
也可能会有所帮助。
关于linux - 在bash中用lftp设置umask,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28239088/