ftpとは?ftpの基本とコマンドの使い方を徹底解説

ftpとは?ftpの基本とコマンドの使い方を徹底解説のアイキャッチイメージ

ftpとは?

ftpとは、File Transfer Protocolの略です。その名の通り、異なるコンピュータの間でファイルを転送するときに使われる機構のことです。とはいえ、自分のパソコンに勝手にファイルが送られてしまうのは困ります。FTPでは、ファイルを受け取る側に「FTPサーバ」を作り、ファイルを送る側には「FTPクライアント」を作り、この両者の間でファイルを転送し合います。それによりセキュリティを確保しています。

ftpサーバ

ftpサーバは、一般的なレンタルサーバ(「共用サーバ」と言います)の場合、レンタルサーバ側が用意してくれています。VPSサーバなどの自分でサーバ環境を構築するサーバの場合は自分でftpサーバを作ります。この記事では、ftpサーバの作り方については割愛します。インフラエンジニアでもない限り、自分でftpサーバを作ることはほぼありません。

ftpクライアント

ftpクライアントは、Windowsなら「コマンドプロンプト」で実行できます。この記事では、コマンドプロンプトでコマンドを利用してftpクライアントを動作させる方法について説明していきます。コマンドでなく、GUI操作を使ってftpを行うftpクライアントソフトも数多く存在します。しかしそれらは実は、コマンドで行う操作をGUIでラップしたものにすぎません。基本はコマンドです。だから、ftpのコマンドについてしっかり理解しましょう。

ftpクライアントの起動方法

Windowsで、「コマンドプロンプト」を起動して、ftpと打ち込んでください。ftpクライアントが起動します。以下では、ftpのコマンドの使用方法について解説していきます。

ftpコマンド

Windowsのftpクライアントの場合、以下のコマンドがあります。! ? append ascii bell binary bye cd close delete debugdirdisconnectgetglobhashhelplcdliterallsmdeletemdirmgetmkdirmlsmputopenpromptputpwdquitquoterecvremotehelprenamermdirsendstatustracetypeuserverboseこれらの中のよく使うコマンドを解説します。

openコマンド

openコマンドは、ftpサーバとの通信を開始するコマンドです。open xxx.xxx.xxx.xxxこのようにIPアドレスで指定するか、そのサーバで決まっているホスト名(コンピュータ名)で指定します。サーバとの接続が確立すると、ftpのユーザー名とパスワードを聞かれます。これもレンタルサーバ側から指定されているはずです。打ち込みましょう。

asciiコマンド、binaryコマンド

この二つは重要なコマンドです。サーバに多いUNIX系OSとWindowsでは「改行コード」が違います。この改行コードをWindowsでのftpクライアントとUNIX系OSでのftpサーバ間で自動変換するのがアスキーモードで、asciiコマンドでこのモードに入ります。改行コードを変換しないならバイナリモードになり、binaryコマンドでこのモードに入ります。テキストファイルを転送するのがアスキーモードで、画像ファイルなどを転送するのがバイナリモードになります。画像ファイルなどを誤ってアスキーモードで転送すると、勝手に中の「改行コードに相当する部分」を置き換えられて画像ファイルが壊れますので、十分注意しましょう。

cdコマンド

サーバのディレクトリ(UNIX系OSではフォルダではなくディレクトリと呼びます)を移動するコマンドです。

lsコマンド

サーバの今のディレクトリのファイルの一覧を表示するコマンドです。lsコマンドの使い方は注意が必要です。ただlsと打ち込んでも、ファイル名しか表示されません。作成日時などのデータも表示させるには、ls -lと打ち込みます。なお、この方法ではファイル名が「.」から始まるファイルは表示されません。「.」から始まるファイルも表示させたければ、ls -a -lを使いましょう。

lcdコマンド

ローカルのフォルダを移動するコマンドです。

!コマンド

ローカルのファイル名を表示させたいときは、どうするのでしょうか。その場合は、!コマンドを使って、ローカルでコマンドプロンプトのコマンドを実行させます。ファイル名を表示させたいなら、!dirです。!コマンドを使えば、コマンドプロンプトで使えるコマンドがすべて実行できます。

putコマンド

put ファイル名で、ローカルのファイルをサーバに転送します。

mputコマンド

ファイルをまとめて転送するときはmputコマンドを使います。mputと打ち込むとファイル名を聞いてくるので、スペースで区切って転送したいファイル名を打ち込んでください。1ファイルごとに転送するか否か確認するので、「y」で許可を出します。やはり転送したくない、というときは「n」です。

getコマンド

getコマンドでサーバからファイルを取ることができます。

mgetコマンド

mgetコマンドでファイルをまとめて取ることができます。使い方はmputコマンドと同じです。

deleteコマンド

サーバのファイルを削除したいとき、deleteコマンドを使います。ただし、削除には十分注意してください。UNIX系OSには、Windowsのような「ゴミ箱」に相当するものはありません。deleteコマンドでファイルを削除すると、問答無用でファイルが消えます。大切なファイルを誤ってdeleteすることのないようにしてください。

mkdirコマンド

サーバにディレクトリを作成したいとき、mkdirコマンドで作成します。

rmdirコマンド

反対にディレクトリを削除したいときはrmdirコマンドを使います。これもファイルと同じく、「ゴミ箱」に入ることはありませんので注意してください。

quitコマンド

ftpをやめるときはquitと打ち込みます。

他のftpクライアント

ここで紹介したコマンドでのftpの操作はなかなか面倒なものです。できることならば、マウス一つで、ボタンをクリックするなどして、自動的に行いたいものです。ディレクトリを移動するたびにファイル名の一覧を表示させなければならないのではなく、移動したらデフォルトで表示されていると便利です。また、put/mputやget/mgetも意識せず行いたいものです。ここで紹介したftpコマンドをラップする形でGUIを操作できるftpクライアントがあります。クライアントソフトと、web上でftpを行うサービスに分かれます。それぞれについて説明します。

ftpクライアントソフト

ローカルのWindowsにインストールして使うソフトです。代表的なものに、FFFTPがあります。一度ホスト名とユーザー名、パスワードを設定しておくとボタン一発で接続でき、左側にサーバのファイル一覧、右側にローカルのファイル一覧が表示され、ファイル転送もボタン一発で行えるなど、高機能なFTPクライアントです。

ftpサービス

レンタルサーバでは、サーバの管理画面からweb上でftpを行う画面へとスムーズに移行できるところも多いです。ポイントは、接続の設定に頭を悩ませる必要がないこと、グラフィカルな操作ができることです。機能はそのレンタルサーバによって様々ですが、たいてい十分使える機能を備えているようです。小規模なWebサイトなどのftpなら、これで十分でしょう。

ftpを使ってみよう

この記事では、ftpクライアントのコマンドでの操作と、GUIでのftpクライアントについて説明しました。本文中でも書いた通り、GUIでのftpクライアントは全てコマンドをラップしたものです。コマンドがftpの基本です。ftpのコマンドについてはしっかり理解してください。一見難しそうなftpですが、一旦使いこなせばこれほど便利なものもありません。

インフラエンジニア専門の転職サイト「FEnetインフラ」

FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。

転職をお考えの方は気軽にご登録・ご相談ください。