WinSCP

導入

Recent Version History :: WinSCP

UIの変更

ユーザーインターフェイスは、Preferencesの[Environment]→[Interface]で2種類から選択できます。

日本語化

ポータブル版では、別途言語ファイルを取得する必要があります。

WinSCP :: Translations

ダウンロードしたファイルを展開し、WinSCP.exeと同一のフォルダにコピーします。そしてPreferencesの[Environment]→[Languages]でJapaneseを選択し、WinSCPを再起動します。

WinSCPをアップグレードしたときには、この言語ファイルも更新します。

サイトの設定

登録済みのサイトの設定を変更するには、そのサイトにログインしているならばログアウトし、[Login]ウィンドウで[Edit]をクリックします。

  • SFTP
  • SCP
  • FTP
    • No encryption
    • TLS/SSL Implicit encryption
    • TLS/SSL Explicit encryption
  • WebDAV
    • No encryption
    • TLS/SSL Implicit encryption

ディレクトリ (Directories)

Loginウィンドウの[Advanced]ボタンをクリックし、[Environment] → [Directories]で、リモートとローカルの初期ディレクトリを設定できます。Directories Page (Advanced Site Settings dialog) :: WinSCP

転送設定 (Transfer Settings)

Preferencesの[Transfer]でプリセットを選択して[Edit]をクリックするか、転送時のウィンドウで[Transfer settings]をクリックすることで、その転送の方法を設定できます。

転送速度制限 (Transfer speed limit)

転送速度は個別のファイルごとに制限されるため、同時に複数のファイルを転送するとこの制限を超えることがあります。またこの制限は、アップロードとダウンロードの双方に適用されます。

事前に設定するならば、Transfer Settingsダイアログの[Common options]で指定します。なおこれはコンボボックスとなっており、リストにある数値以外にも任意の値を指定できます。

転送時に変更するならば、そのウィンドウの[Speed]の項目で指定します。

バックグラウンドで転送しているならば、Queueを右クリックして表示されるメニューで指定できます。なおこの設定はキューごとに適用されるため、複数のキューがあるならば個別に指定する必要があります。

最大同時転送数 (Maximum simultaneous transfers)

Preferencesの[Transfer]→[Background]の[Maximal number of transfers at the same time]で設定できます。

パーミッション (Permissions)

Transfer Settingsダイアログの[Set permissions]から設定できます。

転送設定のプリセット (Transfer Settings Rule)

Loginウィンドウの[Advanced]ボタンの▼をクリックし、[Transfer Settings Rule]をクリックします。

ここで名前を付けて保存した設定は、Preferencesの[Transfer]のプリセットとして追加され、そこから編集することもできます。

接続 (Connection)

接続の保持 (Keepalives)

サーバー側のタイムアウトによって接続が切断されないように、ダミーのコマンドを一定間隔で送信することで接続が維持されるようにできます。Keepalives - The Connection Page (Advanced Site Settings dialog) :: WinSCP

サイトへの接続

SFTP

SFTPで接続するとき、初回には次のように警告されます。The server's host key was not found in the cache :: WinSCP

Continue connecting to an unknown server and add its host key to a cache?

The server's host key was not found in the cache. You have no guarantee that the server is the computer you think it is.

The server's rsa2 key fingerprint is:
ssh-rsa …

If you trust this host, press Yes. To connect without adding host key to the cache, press No. To abandon the connection press Cancel.

*不明なサーバーへの接続を続行し、ホスト キーをキャッシュしますか?**

サーバーのホスト キーがキャッシュされていません。正常なサーバーに接続している保証はありません。

サーバー 'rsa2' キーのフィンガープリント:
ssh-rsa …

このホストを信頼する場合は [はい]、キャッシュせずに接続する場合は [いいえ]、切断するには [キャンセル] をクリックしてください。

接続の失敗

***: No such file or directory

ファイルやディレクトリが存在しているのが確かならば、アクセスが制限されていないか確認します。

転送 (Transfer)

アップロード (Upload)

ローカルのディレクトリで選択し、リモートのディレクトリへドラッグ&ドロップします。またはメニューの【Files → Upload】でも可能です。

ダウンロード (Download)

アップロードの逆の手順です。

ダウンロードの途中で失敗する

Timeout detected. (control connection)」としてダウンロードに失敗するときには、Timeoutの設定を見直します。Timeout detected :: WinSCP

Timeout detected. (control connection)
Copying files from remote side failed.

The Connection Page (Advanced Site Settings dialog) :: WinSCP

WinSCP自体には、ファイルサイズの制限はありません。Can I transfer file larger than 4 GB (or 2 GB)? :: WinSCP

同期 (Synchronize)

手動

メニューの【Commands → Compare Directories】を実行すると、ローカルとリモートで異なるそれぞれのファイルが選択されます。そしてそれらのファイルをアップロードまたはダウンロードすれば、それらのファイルが同期されます。Compare Directories :: WinSCP

この[Compare Directories]は開いているディレクトリのみが対象で、サブディレクトリは含みません。また既定では更新日時で比較されますが、これは設定の[Environment → Commander]の[Compare directory criterions]でサイズで比較するようにも変更できます。

サブディレクトリも同期させるならば、メニューの【Commands → Synchronize Browsing】を有効にしておくと便利です。これはローカルのディレクトリを移動するとリモートのそれも移動し、逆も同様です。この機能は移動先のディレクトリが存在しないと作成しようとするため、有効にする前にディレクトリを合わせておきます。Synchronized Browsing - Navigating :: WinSCP

自動

メニューの【Commands → Synchronize】を選択するとSynchronizeダイアログが表示され、その設定に基づき自動で同期されます。Synchronize Dialog :: WinSCP

設定項目  
Directories 同期の対象とする、ローカルとリモートのルートディレクトリ
Direction/Target directory ※1
  • Both … リモート、ローカル双方を更新
  • Remote … ローカルを転送元として、リモートだけを更新
  • Local … リモートを転送元として、ローカルだけを更新
Synchronization Direction - Directory Synchronization :: WinSCP
Mode
  • Synchronize files … 転送元から、新しいファイルを転送
  • Mirror files … 転送元から、新しいファイルと古いファイルを転送
  • Synchronize timestamps … 転送元と一致するように、ファイルの更新日時を変更 (ファイル自体は転送されない)
Synchronization Mode - Directory Synchronization :: WinSCP
Synchronize options
  • Delete files … 転送元にないファイルを転送先から削除
  • Existing files only … 転送先にないファイルを無視
  • Preview changes … 転送前に確認用のダイアログを表示
  • Selected files only … 選択されているファイルのみを同期の対象とする
Synchronize Options - Synchronize Dialog :: WinSCP
Comparison criteria 2つのファイルが同一かどうか判断する基準
  • Modification time … 更新日時
  • File size … ファイルサイズ
※1 Synchronizeダイアログを表示したときにアクティブな側が、初期状態でTargetとなります。

なお、このSynchronizeによる転送はキューに追加できず、バックグラウンドで転送することはできません。Controlling the Operation - Progress Window :: WinSCP

ミラーリング アップロード (Keep Remote Directory up to Date)

リモートの指定ディレクトリを、最新の状態に保てます。この機能を有効にするとローカルのディレクトリが監視され、変更があった場合には自動でアップロードされます。Keep Remote Directory up to Date :: WinSCP

同期チェックリスト (Synchronization Checklist)
  • 緑矢印 … 転送先に存在せず、新しく作成されるファイル
  • 赤矢印 … 転送先に存在し、上書きされるファイル
  • × 赤十字 … 転送先にのみ存在し、削除されるファイル
Synchronization Checklist :: WinSCP

マスク (Mask)

転送、選択、検索などで、特定のファイルだけを対象とできます。一方で不要なファイルを非表示にしたいだけならば、Preferencesの[Panels]にある[Show hidden files]のチェックを外すかCtrl+Alt+Hで、隠しファイルが表示されないようにします。

マスクはPreferencesの[Transfer]でPresetの編集画面を表示するか、転送時のダイアログの[Transfer settings]をクリックすることで表示される、転送設定の[Other]の項目で設定できます。

パターン マッチする文字
* 0以上の文字
? 1つの文字
[abc] []内のいずれかの文字
[a-z] []内の範囲の文字
ファイルサイズと更新日時のパターン
パターン マッチするファイル
>size[KMG] 指定サイズより大きなファイル※1 *.bin>1M
<size[KMG] 指定サイズより小さなファイル※1 <1G
>yyyy-mm-dd[ hh:mm[:ss]] 指定日時以降に更新されたファイル >2012-02-29 08:47
<yyyy-mm-dd[ hh:mm[:ss]] 指定日時以前に更新されたファイル *.doc<2012-02-29 08:54:21
>time[YDHNS] 指定期間内に更新されたファイル *.doc>1Y
<time[YDHNS] 指定期間外に更新されたファイル <60D
※1 ディレクトリのサイズは0バイトと見なされる

マスクは次の文字により意味を変化させられますが、

  • ディレクトリを対象とするには、末尾にスラッシュ (/) を追加
  • 複数のマスクは、セミコロン (;) またはカンマ (,) で区切る
  • 対象から除外するには、パイプ (|) の後に続ける

これらはマスク入力欄の[Edit]で表示されるウィンドウから入力すると、自動で挿入されます。

アプリケーションの設定

メニューの【Options → Preferences】からアプリケーションの設定を変更できます。

  • Environment
    • Interface
    • Window
    • Commander
    • Explorer
    • Languages
  • Panels
    • Remote
    • Local
  • Editors
    • Internal editor
  • Transfer
    • Drag & Drop
    • Background
    • Endurance
  • Network
  • Security
  • Logging
  • Integration
    • Applications
  • Commands
  • Storage
  • Updates

環境 (Environment)

[Window]の[Miscellaneous]にある[Minimize main window to taskbar status area (system tray)]を有効にすると、最小化時に通知領域に格納できます。

セキュリティ (Security)

マスターパスワード (Master password)

Securityの[Use master password]にチェックを入れることで、Master passwordを設定できます。Master Password - Security Page (Preferences Dialog) :: WinSCP

ログ (logging)

[Enable session logging on level]を有効にすると、ログが記録されるようになります。そしてlevelをDebug 1、Debug 2と変更するごとに、より詳細に記録されるようになります。verbosity - The Logging Page (Preferences Dialog) :: WinSCP

トラブル対処法

隠しファイルが表示されない

まずはPreferencesの[Panels]にある、[Show hidden files]がチェックされているか確認します。これがチェックされていても表示されない場合には、ステータスバーの[Click to show hidden files]をクリックします。なおこれをクリックすると、Preferencesの[Show hidden files]がチェックされていない場合には、チェックが入ります。

逆に隠しファイルを表示せずに運用する場合、リモート側がUNIX系のOSならば、ローカル側でもドット (.) で始まるファイルに隠し属性を設定します。さもなくばローカルとリモートのファイルの表示が一致しなくなります。

確認ダイアログが表示されない

どのようなときに確認ダイアログを表示させるかは、Preferencesの[Environment]で設定できます。しかし[Transfer → Background]の[No confirmations for background transfers]がチェックされていると、バックグラウンドの転送ではすべての確認が無効となります。Background Transfers - Background Page (Preferences Dialog) :: WinSCP

よってバックグラウンドの転送でも確認が必要ならばその[No confirmations…]にチェックを入れ、さらに個別の確認ダイアログは[Environment]でチェックします。

転送されない

Queueの[Progress]が[Completed]となるが[Transferred]が0kBであり転送されていない場合には、マスクの設定でそれが除外されていないか確認します。

複数の技術系サイトから、まとめて検索