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ログイン情報

関連情報