我有一个shell脚本,我正在使用这行代码执行循环本地文件(.gz)并执行scp.scp如果可能,我想测试失败.我正在做一个循环,所以我可以将每个文件名回显到日志,以便我可以跟踪它.
有人可以告诉我如何检查失败的scp吗?或者更好的是,这是一个很好的代码示例吗?谢谢你的帮助.
for gzfile in $LOCALDMPDIR/*.gz
do
  /usr/bin/scp -P 2222 -i $KEYFILE $gzfile foobar@$1:$TGTDIR
  echo "$gzfile is done. " 2>&1
done
Run Code Online (Sandbox Code Playgroud)
    Bre*_*den 22
用$?访问最后一个命令的返回值.检查scp的手册页以进行验证,但我认为返回值为零意味着成功.非零值意味着某种失败.
4gi*_*ivN 10
使用 :
if [ $? -eq 0 ];
then
    echo "OK"</br>
else
    echo "NOK"</br>
fi
Run Code Online (Sandbox Code Playgroud)
"["之后和"]之前有空白.不要围绕$?和0引号