2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

WinSCPコマンドラインでサーバログイン、ファイルダウンロードアップロード

Last updated at Posted at 2019-12-14

概要

WinSCPにはコマンドラインインターフェースがあり、これにより複数のサーバにログインして一気にファイルをアップロードする、など、いろいろできます。
今回はAWS EC2にあるファイルのダウンロードとアップロードを行います。

したいこと

  1. ダウンロード先(以降、EC2(hoge)とする)からzipファイル(/home/ec2-user/test.zip)をダウンロード
  2. 上記ファイルをアップロード先(以降、EC2(piyo)とする)にアップロード
  3. アップロードしたZIPファイルの解凍と削除

上記を1コマンドで行うスクリプトを作成します。

サーバ状況

EC2(hoge)
4.png

EC2(piyo)
5.png

コマンド

WinSCPをインストールしたディレクトリにWinSCP.comファイルがあります。
コマンドプロンプトで以下を実行します。

winscp.com /script=updown.txt

実際のダウンロード、アップロード処理は別ファイルに記述し、/scriptパラメタに指定します。

updown.txt
# 入力を求められたとき自動でNOで答える
option batch on
# 実行しているコマンドのechoを表示するか
option echo on
# getやputでファイルの上書きなどの確認を行うか
option confirm off

#EC2(hoge)からZIPダウンロード
## ログイン(セッションスタート)
## -privatekey 秘密鍵ファイルを指定する。ppk形式。
## -hostkey SSH key fingerprintsを指定する。
open scp://ec2-user@13.231.179.203:22/ -privatekey=ksatou.ppk -hostkey="ssh-ed25519 256 2/fGEolaTkr+D/JQy4b2LvV4wVqoY/M+757ezS84Rbk"

## ファイルをローカルPCにダウンロード
get /home/ec2-user/test.zip G:\tmp\test.zip

# ログアウト(セッションクローズ)
close


#EC2(piyo)へzipをアップロード
open scp://ec2-user@13.114.198.4:22/ -privatekey=ksatou.ppk -hostkey="ssh-ed25519 256 /KO8oL/XL9W7s1+AtroOAJuwAek6KPsgvuz3Nk4XwiM="

## アップロード
put "G:\tmp\test.zip"

# callでシェルコマンドが使用できる
# unzipでアップロードされたzipを解凍
call unzip test.zip

# zipファイルの削除
rm test.zip

close

結果

コマンド実行結果
6.png

ダウンロードの確認
7.png

アップロードと解凍、削除の確認
8.png

#参考
https://winscp.net/eng/docs/scriptcommand_open
https://qiita.com/ptiringo/items/90f5246f554da80b1774

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?