需要以编程方式检查数组中文件的分布。登录到主服务器,然后想使用简单的ssh检查工人上的文件。到目前为止,我有:
ssh $HOSTNAME "[ -e '$HOSTNAME:/directory/filename' ] && echo 'Exists'"
根据一些日志输出,我知道ssh是成功的,但是我怎样才能让测试向主服务器返回消息呢?运行上面的命令什么也不会返回。
z9gpfhce1#
SSH将使用与您在远程主机上运行的命令相同的退出代码退出。如果该命令是一个测试,则退出代码将与您通常期望的测试相匹配。我谨提出以下建议:
$HOSTNAME:
ssh "$HOSTNAME" "test -e '/directory/filename'" && echo 'Exists'
我个人觉得if语句更容易理解,如果你愿意走这条路,这是一个可选的变化:
if
if ssh "$HOSTNAME" "test -e '/directory/filename'"; then echo "Exists" else echo "Does not exist" >&2 exit 1 fi
1条答案
按热度按时间z9gpfhce1#
SSH将使用与您在远程主机上运行的命令相同的退出代码退出。如果该命令是一个测试,则退出代码将与您通常期望的测试相匹配。
我谨提出以下建议:
$HOSTNAME:
似乎不正确。我个人觉得
if
语句更容易理解,如果你愿意走这条路,这是一个可选的变化: