【发布时间】:2021-08-21 15:48:27
【问题描述】:
我有一个 bash 脚本,它使用 scp 将文件从本地服务器复制到远程服务器。完成所有传输后,我在 ssh 上运行 chmod 命令以打开所有权限。问题是它间歇性地工作并且不能一直正确地 chmod 777。 我有什么方法可以验证 chmod 命令是否确实执行(可能使用返回码或其他东西)? 我确实设置了 ssh 密钥,因此在执行 ssh 或 scp 时不需要输入密码。下面是我的代码的sn-p
#将文件从本地机器复制到远程服务器
scp file1.txt file2.txt file3.txt 10.111.222.333:/home/user1/fileDir/
#打开远程服务器的权限
ssh -qX 10.111.222.333 chmod -R 777 /home/user1/fileDir
【问题讨论】:
-
ssh命令的退出码应该反映chmod命令的退出码——也就是说,如果chmod出错,ssh也应该返回一个非零码。