定期的にFTPサーバーからファイルを取得する必要があり、wgetを使用すると簡単にファイルを取得できることが分かりました。
wget -m --user=yyy --password=xxxx ftps://host.com.au
これは本当にうまく機能します。問題は、明らかにファイルがリモート サーバーに残され、次にスクリプトを実行すると、すべてのファイルが再び取得されることです。
wget には --delete-after フラグがあり、一見理想的に思えますが、マニュアル ページに記載されているように、ローカル ファイルのみが削除され、リモート ファイルは削除されません。
これを実現する方法はありますか? 残念ながら、リモート サーバーへのシェル アクセスや rsync アクセスがないため、ftp 経由にする必要があります。wget 以外のものを検討する必要がありますか?
答え1
代わりに、次のようなコマンドwget
を試すことができますlftp
。
lftp site.com --user <username> --password <password> -e "mirror --Remove-source-files -v
このコマンドは-e "mirror
ミラーまたはリモートサイトを作成するために使用されます
--Remove-source
ダウンロード後にソースファイルを削除します。このコマンドには十分注意してください。