FTPサイト、もしくはFTPサーバへのファイル転送を実施する場合は「ftp」コマンドを使用します。
ファイルのやりとり(アップロード・ダウンロード)をするにあたり、ftpコマンドは便利です。
目次
「ftp」コマンドの使い方(Linux)
ftpコマンドを使用することでファイルの転送が可能となります。
主な使い方は、FTPサーバを建て、ユーザーがFTPサーバへファイルのアップロード・ダウンロードを実施します。
「ftp」コマンドのインストール
FTPコマンドは以下コマンドでパッケージを取得します。
# dnf -y install ftp
or
# yum -y install ftp
FTPコマンドでのファイル転送は基本バイナリモードで実施する
以前まではテキストファイルの転送には「アスキーモード(ASCII)」と「バイナリモード(Binary )」が使われていました。
違いは以下となります。
- アスキーモード:FTPクライアントに合わせた改行コードに変換し転送
- バイナリモード:ファイルを変換無く転送
以前まではテキストファイルの転送には上記のアスキーモードが使われていましたが、現在は改行コードを意識しなくても動作するため、基本的にバイナリモードでファイル転送をして問題がないです。
FTPサーバへの接続
FTPサーバへの接続コマンドは以下となります。
~ $ ftp 192.168.0.106 Connected to 192.168.0.106. 220---------- Welcome to Pure-FTPd [privsep] [TLS] ---------- 220-You are user number 1 of 5 allowed. 220-Local time is now 03:02. Server port: 21. 220-This is a private system - No anonymous login 220-IPv6 connections are also welcome on this server. 220 You will be disconnected after 15 minutes of inactivity. Name (192.168.0.106:): test 331 User test OK. Password required Password: 230 OK. Current directory is / Remote system type is UNIX. Using binary mode to transfer files. ftp>
ファイルアップロード
FTPサーバへのアクセス接続後、以下コマンドでファイルをアップロードします。
ftp> put test.txt local: test.txt remote: test.txt 229 Extended Passive mode OK (|||30000|) 150 Accepted data connection 100% |*************************************************************************************| 16 12.51 KiB/s 00:00 ETA 226-File successfully transferred 226 0.004 seconds (measured here), 4.04 Kbytes per second 16 bytes sent in 00:00 (3.52 KiB/s) ftp> ftp> ftp> ls 229 Extended Passive mode OK (|||30009|) 150 Accepted data connection -rw-r--r-- 1 1000 ftpgroup 16 Mar 20 04:31 test.txt -rw-r--r-- 1 1000 ftpgroup 0 Mar 14 03:36 test_get.txt 226-Options: -l 226 2 matches total ftp>
ファイルダウンロード
次にファイルを以下コマンドでダウンロードします。
ダウンロードは「バイナリモード」でダウンロードします。
ダウンロード完了後、「quit」コマンドでFTPサーバから切断し、ローカルにファイルがダウンロードされている事が確認できます。
ftp> binary 200 TYPE is now 8-bit binary ftp> get test_get.txt local: test_get.txt remote: test_get.txt 229 Extended Passive mode OK (|||30004|) 150 Accepted data connection 0 0.00 KiB/s 226 File successfully transferred ftp> ftp> quit 221-Goodbye. You uploaded 0 and downloaded 0 kbytes. 221 Logout. ~ $ ls test_get.txt ~ $
「ftp」コマンドオプション
ftpコマンドのオプションは以下の通りとなります。
ほとんどは「ftp」コマンドだけで完結はしますが、デバックなどを取りながら実施したい場合は「-d」オプションを使用しましょう。
# ftp -h Usage: { ftp | pftp } [-Apinegvtd] [hostname] -A: enable active mode -p: enable passive mode (default for ftp and pftp) -i: turn off prompting during mget -n: inhibit auto-login -e: disable readline support, if present -g: disable filename globbing -m: don't force data channel interface to the same as control channel -v: verbose mode -t: enable packet tracing [nonfunctional] -d: enable debugging
「ftp」コマンドの使い方は以上となります。
エンジニアのオンライン学習
エンジニアにおすすめのオンライン教材比較 | |
ITエンジニアが自宅で学習ができるオンラインスクール比較 | |