あまりにも単純な質問で申し訳ありません。しかし、私は Java 開発者であり、シェル スクリプトの知識はありません。私はグーグルで検索しましたが、探しているものを正確に見つけることができませんでした。
私の要件
- Sftp [pub/pri キーに基づく認証] を使用してリモート サーバーに接続します。秘密鍵ファイルを指す変数
- 特定の拡張子 [.log] を持つファイルをローカル サーバー フォルダーに転送します。リモート サーバー パスとローカル フォルダーを設定する変数
- リモートサーバーで転送されたファイルの名前を変更します
- 転送されたすべてのファイルを .txt ファイルに記録します
このためのシェルスクリプトを教えてもらえますか?
これまでのところ、私は提案から組み立てました。まだ私の側にいくつかの質問が残っています;)
export PRIVKEY=${private_key_path}
export RMTHOST=user@remotehost
export RMTDIR=/logs/*.log
export LOCDIR=/downloaded/logs/
export LOG=sucess.txt
scp -i $PRIVKEY $RMTHOST:$RMTDIR $LOCDIR
for i in 'ls -1 $LOCDIR/*.log'
do
echo $i >> $LOG
done
ssh $RMTHOST -c "for i in `ls -1 $RMTDIR; do mv /logs/$i /logs/$i.transferred; done"