WinSCPでファイルを取り出す・保存する

SSHを使えばUNIX系OSを実行しているコンピュータにリモートで接続し、シェルを立ち上げ、システムを利用できますが、
そのコンピュータからファイルを取り出したり、逆にファイルを保存するときに手軽な方法はないでしょうか。
わざわざメーラを立ち上げ、ファイルを添付しメール送受信なんてのが、急場しのぎに思いつきそうですが、
SSHをベースとしたSCPを利用してもっと合理的にファイルをやり取りしましょう。
SCPとはSecureCopyを略したもので、SSHにより結ばれた安全なシェルを介してファイルをやり取りすることができます。
今回はWindows用のSCPクライアント「WinSCP」を利用して簡単にファイルをやり取りする方法を説明します。

1.WinSCPのダウンロードとインストール

何はともあれ、WinSCPをまずはインストールしましょう。

  • 1.WinSCPのダウンロード

ここからダウンロードしてください。
パソコンにインストールするのであれば「Installation Package」を選びましょう。
USBメモリなどに保存する場合や、一時的に使いたいのであればPortable Executablesでもいいでしょう。

  • 2.WinSCPのインストール

ダウンロードが終わったら、ダウンロードしたファイルを開きましょう。
Portable版をダウンロードした場合は、解凍し、この手順は飛ばします。
最初に言語の選択画面が出ます。日本語が選ばれているのを確認して、「OK」をクリック

インストールウィザードが表示されるので、「次へ」をクリックし、進めましょう。
使用許諾契約を確認し、「次へ」をクリック。
次にインストール方法を確認されますが、「標準的なインストール」を選びましょう。
ダウンロード時にスポンサー付きインストーラをダウンロードすると、ウィザードの途中で広告が表示され、
関係ないソフトのインストールを確認されますが、この手のソフトはたいてい地雷なので、
間違いなく「インストールしない」を選んでおきましょう。

途中で「ユーザの初期設定」を選べと表示されますが、ここでは「コマンダーインターフェイス」を選んでおきましょう。

あとはウィザードを進めていけばインストールが終わるはずです。

2.アカウント設定

接続先が固定されているのであれば、その設定を保存しておくと起動の都度、サーバーなどを指定しなくていいので楽になります。
今回は初回起動時に合わせてこの設定を行ってしまいます。

デスクトップのショートカットか、スタートメニューから起動しましょう。

  • 2.アカウント情報の入力

起動すると次のような画面が出ます。ここに接続に必要な情報を入力します。
といってもSSHを利用しているので入力する内容はSSHの時と同じですね。

また赤枠で囲った部分でプロトコルをSFTPからSCPへと忘れずに変更しておきます。
必要事項の入力ができたら、「ログイン」ではなく保存をクリックします。

  • 3.アカウント情報の保存

すると次のような画面が出てきます。名前は変えなくても、自分なりに名前を付けなおしても構いません。
編集したら「OK」をクリックし、保存します。

ここまでで初期設定は終わりです。

3.接続と利用

ここからは普段の操作になります。

  • 1.サーバーへの接続

上の手順で保存を終えたり、あるいは保存した後にWinSCPを起動すると、
次のような接続先を指定する画面になります。

接続先を上のリストの中でダブルクリックするか、選択し反転表示させたうえでログインを押すと、接続を開始します。
ちなみに、ここで画面右の「新規」をクリックすると、2.2の画面へと遷移し、新たな接続先を指定・保存できます。
接続先のホストが初めてのホストの場合は、ホストが正当なものかを確認する画面が出ます。これも他のSSHクライアントと同様です。*1

ホストを正当なものか確認できる情報がある場合は、それと照らし合わせたうえで、「はい」をクリックし接続します。
この画面は、一度確認が済めば二度表示されることはありません。
ホストの確認後、接続状況の進捗が表示されます。パスワードを保存していない場合は、ここでパスワードの入力を求められます。

パスワードを入力後、「OK」をクリックします。正しく認証されると進捗画面が消えます。
間違えると、再び同じ画面でパスワードを入力することになります。

接続が済むと次のようなウィンドウに遷移します。この画面で、ファイルの操作などを行います。

基本的には一般的なFTPクライアントと同じで、上下の仕切りの左に自分のパソコンの内容が、右には接続先の内容が表示されます。
それぞれの枠の上部に現在操作対象としているディレクトリが表示されています。ディレクトリを切り替えるには、枠内のディレクトリを開くか
上位のディレクトリに行くには、常に枠上部にある「...」をダブルクリックします。
データのやり取りをする前に、パソコンとサーバー、それぞれのディレクトリをお目当てのディレクトリに変更しておきます。

  • 3.ファイルの操作

お目当てのディレクトリに行ったら、あとは操作は非常に簡単で、操作したいファイルをドラッグアンドドロップで移動させます。
たとえば、手元のパソコンからサーバーにファイルを転送したければ、左の枠から転送したいファイルをドラッグし、右の枠で離します。
その逆も同様です。またファイルは複数選択でき、フォルダもファイル同様に扱えます。
マウス操作を行うと、実際に転送を行う前に、確認画面が出ます。ここで転送先が間違っていないかなどを確認し、「コピー」をクリックします。

すると転送が開始されます。サイズが大きく、転送に時間がかかる場合は進捗画面が表示されることもあります。

このウィンドウが消えれば転送完了です。自動的に左右枠の表示内容が更新され、転送したファイルがリストに追加されます。

作業が終わったらそのまま画面右上の「×」で閉じます。このとき切断を確認する画面が表示されます。
切断してよければ「はい」を選びます。すると切断されWinSCPが終了されます。

4.その他

  • いちいち左枠(ローカル側)を変更するのが面倒!
  • それぞれの枠でディレクトリ上に落とすと、そのディレクトリ内に転送先が指定されます。
  • SSHでつないでるのでもちろんコマンドを実行させることもできます。
    • 画面上部から「コマンド」→「コンソールを開く」と操作するとウィンドウが出てきます。
    • 画面の注にある通り、シェル上でユーザー入力が必要なコマンドなどは実行できません。
    • TeXでうっかりplatexし忘れたり、dvipdfmxし忘れたときには、これを使えばわざわざTera Termとかを立ち上げなくて済みます。
  • ファイル名・ディレクトリ名の変更や、ディレクトリ・ファイルの削除、作成もできます。
    • それぞれ対象となるファイルなどを右クリックして出てくるコンテキストメニューから実行できます。
    • 画面下のショートカットキーを用いても実行できます。