本サイトではアフィリエイト広告を利用しています
scp command

Cygwin PC-UNIX セキュリティ ハウツー 設定

SSHコマンドラインからファイルをアップロードするには?

サーバーに、WordPress のプラグインのちょっとした修正など、ちょっとしたファイルをさっさとアップロードしたいときがあります。

そんな時に、いちいち ftp ソフトを使ったり、html や php 経由で行うのは、大変面倒だと思います。

そこで、コマンドラインで速攻アップロードという感じになるわけです。

方法はいくつかありますが、最近のレンタルサーバーは ssh をサポートしているので、ftp のコマンドラインで行うより ssh (scp)を使う方が無難です。

コマンドラインのサンプルは下の通り。

[code]
scp ~/script/my-pp-main.php user@192.168.1.2:/public_html/wp-content/plugins/my-pp/
[/code]

自分のローカルマシンのディレクトリ script にあるmy-pp-main.phpをリモートサーバー(192.168.1.2)のディレクトリ「/public_html/wp-content/plugins/my-pp/」にアップロードします。

scpコマンドの使い方

[code]
$ scp [オプション] コピー元 コピー先
[/code]

オプションには、

OP 内容
-C 通信を圧縮する
-i 秘密鍵ファイル名 RSAまたはDSA認証の秘密鍵ファイルを指定する
-P ポート番号 ポート番号を指定する
-p オリジナルファイルの更新時間とモードを維持する
-r ディレクトリ内を再帰的にコピーする
-v プログレス情報を表示する
-1 SSH1を使用する
-2 SSH2を使用する
-4 IPv4を使用する
-6 IPv6を使用する

があります。
SSH1は今どき使わないと思いますので、無視していいですが、残りのオプションはどれも使う可能性が高いものですのでしっかり意識しておきましょう。

オプションそのものは、ひとつひとつ丁寧に指定してもいいのですが、引数を取らないオプションはまとめることが可能です。
例えば、-p -r-prとまとめることが可能です。

-Cygwin, PC-UNIX, セキュリティ, ハウツー, 設定
-, ,