SFTP サーバーとの対話中に奇妙な問題が発生しました。私がする必要があるのは、ログインして、特定の基準を満たす最新のファイルを見つけてダウンロードすることです。これはすべてbashスクリプトからです。これまでの方法は、実行ls -lt
して出力の最初の行を取得するだけでした。
echo "ls -lt" > tmp.sftp
sftp -b tmp.sftp user@ftps.server.com:/inbox 1>sftp.log 2>&1
FILE=$(cat sftp.log | sed -n 3p | awk '{print $NF}')
echo "get $FILE" > tmp.sftp
sftp -b tmp.sftp user@ftps.server.com:/inbox
ただし、最近、他のファイル (私は気にしない) を同じフォルダーに入れ始めました。コードを dols -lt blah*
に変更してみましたが、なぜかワイルドカード フィルタがあると、ファイル リストが逆順にソートされてしまいます...
これを解決する方法はばかげているように感じます。もっと良い方法があるはずです。私はどちらに見えますか?カール?え?ありがとう!