はじめに
ローカルとリモートサーバ間でファイルをやり取りしたいときに便利なscpコマンド
SSH(Secure Shell)を使ってファイルを暗号化しながら安全に転送できたので、備忘録として残します。
内容
-
scpコマンド
は、SSHを利用してリモートとローカル間でファイルをコピーするためのコマンド
scp [オプション] [コピー元] [コピー先]
リモート → ローカルにファイルをコピー
- ファイル指定する場合
scp user@remote_host:/path/to/file.csv ./local_path
- 複数ファイルを一度に持ってきたい場合
scp cuser@remote_host:/path/to/*.csv ./local_path
- 上記の形式だと
zsh
は*
(アスタリスク)がファイルにマッチしないとき、ローカル側のパスとして展開しようとしてエラーになるので注意
zsh: no matches found: cuser@remote_host:/path/to/*.csv
- クオートで囲む
scp "cuser@remote_host:/path/to/*.csv" ./local_path
ローカル → リモートにファイルをコピー
scp ./local_path/file.csv user@remote_host:/remote/path/
まとめ
サーバー上のファイルコピーしたいときに便利なコマンドだったので、備忘録としてまとめ。
必要に応じて -r オプション(ディレクトリ丸ごとコピー)や -P オプション(ポート指定)もできるので便利なコマンド。