Windowsでファイル転送する時、いつもFFFTP様にお世話になってるんだけど、FFFTPでうまく転送できなかった時はコマンドプロンプトから転送している。
とは言え、そんなに頻度は高くないので、コマンドとかいつもググってるんだけど、そろそろ覚えたいからメモ。
そもそも転送が不安定な場合は、その原因探れって話なんだけど、それはまた別記事で。
ftpコマンドの使い方
コマンドプロンプトからFTP転送する際のコマンドは、まんま「ftp」コマンド。
対話式で進んでいくので、まずはサーバへ接続するところまで。
後でも移動できるけど、今回はftpコマンドの前に転送したいファイルがあるフォルダに移動しておく。
> cd [転送したいファイルがあるフォルダ]
転送したいファイルがあるフォルダに移動したら、ftpコマンドを実行する。
> ftp
ftpコマンドの実行で、FTPモードに変更される。
ftp>
次にサーバに接続するため、openコマンドを実行する。
ftp> open
すると、接続先が確認されるので、ドメインまたはIPアドレスを入力する。
ftp> open
宛先 XXX.XXX.XXX.XXX
次にユーザーを入力する。
ftp> open
宛先 XXX.XXX.XXX.XXX
XXX.XXX.XXX.XXX に接続しました。
:
ユーザー (XXX.XXX.XXX.XXX:(none)): [ユーザー名]
パスワードを入力する。
ftp> open
宛先 XXX.XXX.XXX.XXX
XXX.XXX.XXX.XXX に接続しました。
:
ユーザー (XXX.XXX.XXX.XXX:(none)): [ユーザー名]
:
パスワード: [パスワード]
正しく認証されれば、サーバへの接続は完了。
ftp> open
宛先 XXX.XXX.XXX.XXX
XXX.XXX.XXX.XXX に接続しました。
:
ユーザー (XXX.XXX.XXX.XXX:(none)): [ユーザー名]
:
パスワード:
230 Login successful.
ftp>
ファイルのダウンロード(サーバ → PC)
サーバからファイルを取得する基本的なコマンドは「get」コマンド。
以下に、サーバ接続~ファイルダウンロードまでのコマンド例を示す。
FTPダウンロードの流れ
# サーバの現在のディレクトリを確認 ftp>pwd
# 取得したいファイルがあるディレクトリへ移動 ftp>cd [取得したいファイルがあるディレクトリパス]
# PC側の作業フォルダを確認 ftp>lcd .
# 取得したいファイルの存在を確認 ftp>ls -l
# サーバ → PC へファイルを転送 ftp>get [ファイル名]
複数のファイルを同時にダウンロード
マッチングしたファイルを複数ダウンロードするコマンドは「mget」コマンド。
ftp> mget *.txt
そのまま実行すると、毎回確認が入るので、その場合は対話スキップのコマンドを事前に実行しておく。
ftp>prompt
対話モード オフ。 ftp>mget *.txt
ディレクトリごとダウンロード
他にいいやり方があるかもしれないけれど、先にサーバ側で圧縮してから転送するやり方でやってる。
# SSHでLinux系サーバにログインしている場合
$ zip [ファイル名].zip [ディレクトリ名]
ファイルのアップロード(PC → サーバ)
サーバへファイルを転送する基本的なコマンドは「put」コマンド。
以下に、サーバ接続~ファイルアップロードまでのコマンド例を示す。
FTPアップロードの流れ
# サーバの現在のディレクトリを確認 ftp>pwd
# 転送先のディレクトリへ移動 ftp>cd [転送先のディレクトリパス]
# PC側の転送したいファイルのあるフォルダか確認 (確認した結果、異なる場合はフォルダパスを指定する) ftp>lcd .
# PC → サーバ へファイルを転送 ftp>put [ファイル名]
複数のファイルを同時にアップロード
マッチングしたファイルを複数アップロードするコマンドは「mput」コマンド。
ftp> mput *.txt
そのまま実行すると、毎回確認が入るので、その場合はインタラクティブモードを切り替えるコマンドを事前に実行しておく。
ftp>prompt
対話モード オフ。 ftp>mput *.txt
ディレクトリごとアップロード
ダウンロードと同じく、PCで先に圧縮してから転送し、サーバ側で解凍するやり方でやってる。
# SSHでLinux系サーバにログインしている場合 # 転送されてきたファイルを解凍 $unzip [ファイル名].zip
# 圧縮ファイルは不要なので削除 $rm [ファイル名].zip