sftp避免在找不到文件时退出

时间:2015-08-05 10:05:46

标签: bash sftp

我有这个脚本:

filePattern='sor.log*'
filePattern2='sor.SOR.log*'
myLocation=/opt/tradertools/omer
clientLocation=/opt/tradertools/omer/sor/from
clientName=vmonitorlmpa
clientUser=root
clientPass=triltest

export SSHPASS=$clientPass

sshpass -e sftp -oStrictHostKeyChecking=no -oBatchMode=no -b - $clientUser@$clientName << !

    get $clientLocation/$filePattern2 $myLocation
    get $clientLocation/$filePattern $myLocation

   bye
!

但如果找不到filepattern2,它就会退出。如何避免使用两个SFTP连接?

1 个答案:

答案 0 :(得分:7)

引用sftp man page

  如果以下任何命令失败,

sftp将中止:getputregetreputrename,{{ 1}},lnrmmkdirchdirlslchdirchmod,{{1} },chownchgrplpwddf。通过在命令前添加symlink字符(例如,lmkdir),可以逐个命令地抑制错误终止。

所以使用:

-