使用 ssh 的远程服务器上的 Chmod 命令不起作用

问题描述

我有一个 bash 脚本,它使用 scp 将文件从本地复制到远程服务器。完成所有传输后,我通过 ssh 运行 chmod 命令以打开所有权限。问题是它间歇性地工作,并且不能一直正确地 chmod 777。 有什么办法可以验证 chmod 命令确实执行了(可能使用返回码或其他东西)?我确实设置了 ssh 密钥,因此在执行 ssh 或 scp 时不需要输入密码。下面是我的代码片段

#将文件从本地机器复制到远程服务器

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 server "chmod 755 file |echo $?"

返回 0

|echo $? 正在检查所运行命令的返回码。