需要删除使用 mput 放置到远程服务器的文件

需要删除使用 mput 放置到远程服务器的文件

当前逻辑是从本地目录中删除所有文件,其中放置在远程目录中的文件应被删除,并且本地目录中的任何新文件应可用于下次运行

function XXXX() {
sftp -o XXXXXXX  << EOF
  mput *
  quit
EOF
TS=`date +%y%m%d%H%M%s`
echo "Time after sending is $TS"

RC=$?
if [ $RC -eq 0 ]
  then
    rm $DIR/*  #instead of deleting all files want to delete only files that are placed to remote server.
  else echo "sftp failed.  RC is $RC"
fi }

答案1

或许lftp这里是一个可行的替代方案:

lftp -e mput -E * -u user,password sftp://domain.com
  • -c执行命令,然后退出
  • mput -E *上传所有匹配通配符的文件,然后删除源
  • -u user,password登录信息

相关内容