コンテンツにスキップ

WinSCP Tips

コマンドでファイルダウンロード

どうしてもパスワード認証しなければならない環境で、定期的にログ採取する事になったので調べてみた。
teratermマクロとかもあったが、複数ファイルダウンロードがめんどくさそう。
なお前提として、パスワードを平文保存することになるので、可能なら素直に鍵認証したほうが当然いい。

スクリプト機能 - WinSCP Wiki - WinSCP - OSDN

以下のようにスクリプトを作成し保存。C:\work\winscp_macro.txt

# バッチモードに設定し、確認/問い合わせを無効にする
option batch on
# ファイル上書きの確認などを無効にする
option confirm off

# サーバーに接続
#   ユーザー名: username
#   パスワード: xxxxxxxxxx
#   ホスト名: 10.0.0.10
open username:xxxxxxxxxx@10.0.0.10

# リモートディレクトリを変更
cd /var/log
# バイナリモードに変更
option transfer binary
# ファイルを C:\work\ に保存
get messages* C:\work\
# 切断
close
# 終了
exit

コマンドプロンプトで以下のように指定して実行できる

.\WinSCP.exe /console /script=C:\work\winscp_macro.txt /log=C:\work\winscp.log

補足

  • 今回使用したのは WinSCP-5.19.2-Portable
  • 同名ファイルがあった場合上書きされる