━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ いざというときに役立つMS−DOS 執筆:速星 千里 第82号(2006.07.31) FTPコマンド ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ <目次> ■ はじめに ● SNSへのお誘い ■ FTPコマンド ● 目標 ● 接続 ● ダウンロード ● 切断 ● 自動処理 ----☆PR☆--------------------------------------------------------------   ★ 必ず「3日以内」にダウンロードしてください。期間限定 ★ 無料マニュアル 「稼げるSEになるための新時代のルール」 すでに1000人のSEがダウンロード ⇒ http://dream.1st-biz.net/report.htm ---------------------------------------------------------------☆PR☆--- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■ はじめに ------------------------------------------------------------------------ 皆さん、こんにちは。速星です。 情報処理技術者試験、秋試験の申し込みが始まりましたね。 http://www.jitec.jp/ 私は、今回は見送ることにしました。 春試験のエンベデッド受験に向けて、のんびり勉強を進めていきます。 さて、今回のテーマは、「FTPコマンド」です。 DOS窓でFTPを用いてファイルのアップロード・ダウンロードを行う方法、そして その作業を自動化する方法をご説明します。 ------------------------------------------------------------------------ ● SNSへのお誘い 以前からこのメルマガでも「JYOTATSU」のお誘いを書いていましたが、このたび、 「mixi」にも入りました。 まだ勝手がよく分かっていませんが、まあそのうち何とかなるでしょう(汗) ○ mixi(日本最大のSNS) http://mixi.jp/show_friend.pl?id=5653631 ○ JYOTATSU(情報処理に特化したSNS) http://jyotatsu.jp/?m=pc&a=page_f_home&target_c_member_id=212 リンク申請、お気軽にどうぞ(読者の方だと分かるように一言お願いします)。 また、招待をご希望の方はこのメルマガへの返信にてお知らせ下さい。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■ FTPコマンド ------------------------------------------------------------------------ FTP(File Transfer Protocol)とは、インターネット上やLAN上でファイルを 転送するときによく用いられるプロトコル(※)です。 サーバと手元のパソコンとの間でファイルのやりとりを行う場合には、通常、 専用のFTPソフト(※)やInternet Explorerがよく使われます。 これらのソフトには、サーバ上にあるフォルダやファイルを、手元のパソコンに あるファイルと同じように、GUIで手軽に扱えるという利点があります。 一方、コマンドプロンプトから実行するFTPコマンドは、テキストベースなので 操作に若干の慣れが必要となりますが、高機能な専用ソフトとは異なり、非力な PC上でも軽快に動作します。 また、キーボードのみで操作するため、作業の自動化も簡単です。 毎日決まったパターンのファイルをサーバにアップロードする場合などは、FTP コマンドと、バッチファイルやVBScript、タスクスケジューラなどとを組み合わ せれば、非常に強力なファイル自動生成・アップロード機能が実現できるはずです。 (※)用語解説 ・プロトコル 通信を行う際の約束事。通信手順、通信規約などと訳される。 http://e-words.jp/w/E38397E383ADE38388E382B3E383AB.html ・専用のFTPソフト FTPクライアントも呼ばれる。私のおすすめは「FFFTP」。 http://www2.biglobe.ne.jp/~sota/ffftp.html ------------------------------------------------------------------------ ● 目標 今回は、私も愛用している世界最速のWebブラウザ「Opera」のFTPサイトに接続 し、最新版のインストーラをダウンロードすることを目標にして、解説を進める ことにしました。 Webサイト → http://www.jp.opera.com/ FTPサイト → ftp://ftp.opera.com/ かなり高度な目標ですが、以下の手順の通りに進めれば、絶対にうまくいくはず です。いい練習になりますので、皆さんも実際に手を動かしてみて下さい。 ------------------------------------------------------------------------ ● 接続 サーバ名をオプションに指定してFTPコマンドを起動すると、サーバに接続する ことができます。 > FTP サーバ名 従って、ウェブブラウザ「Opera」のFTPサイトに接続したい場合、DOS窓で次の ように入力することになります。 > FTP ftp.opera.com サーバに接続すると、ユーザ名とパスワードを要求されます。 今回の場合、匿名(anonymous)で接続しますので、ユーザ名は「anonymous」です。 > Connected to get1.opera.com. > 220 (vsFTPd 2.0.3) > User (get1.opera.com:(none)): anonymous 匿名接続の場合、パスワードは何を入力しても一応ログインできますが、自分の メールアドレスをパスワード代わりに打ち込むのが慣習になっています。 (パスワードは、入力しても画面上には表示されません) > 331 Please specify the password. > Password: ログインに成功すると、次のようなメッセージが表示されます。 > 230 Login successful. ユーザ名を打ち間違った場合は、いったん「quit」でFTPコマンドを終了し、 始めからやり直すのが手っ取り早いでしょう。 なお、今回のように匿名で接続する場合、FTPコマンドを起動する際にオプション 「-A」を指定する、という方法もあります。 このときの「-A」は、英大文字で、サーバ名より前に記述する必要があります。 > FTP -A ftp.opera.com この場合、自動的にログイン処理が行われますので、ユーザ名やパスワードを 手入力する必要がなくなります。 実行時の表示は以下のようになります。 > Connected to get1.opera.com. > 220 (vsFTPd 2.0.3) > 331 Please specify the password. > 230 Login successful. > Anonymous login succeeded for ****@**** > ftp> ------------------------------------------------------------------------ ● ダウンロード 接続が完了したら、いよいよファイルのダウンロードです。 ファイルを転送(ダウンロードorアップロード)する前には必ず、転送モード を設定する必要があります。 転送モードにはテキストファイル(※)用の「ascii」とバイナリファイル(※) 用の「binary」がありますが、今回ダウンロードするファイルはバイナリファイル ですので、「binary」と入力して下さい。 > ftp> binary > 200 Switching to Binary mode. 「get ファイル名」と打ち込むと、ファイルをダウンロードできます。 なお、今回ダウンロードするファイルは、ファイル名の途中に半角スペースを 含んでいますので、パス名・ファイル名の全体をダブルクォーテーションで囲う 必要があります。 > ftp> get "pub/opera/win/900/int/Opera 9 International Setup.exe" 正しく入力すれば、以下のように表示され、ファイルのダウンロードが始まります。 > 200 PORT command successful. Consider using PASV. > 150 Opening BINARY mode data connection for pub/opera/win/900/int/Opera 9 Intern > ational Setup.exe (6436200 bytes). Webブラウザでダウンロードする場合、普通はダウンロードの進捗状況が表示 されますね。 でもFTPコマンドの場合、ダウンロードしている間、画面は一切変化しません。 どうしても不安になってしまいますが、気長に待って下さい。 正常にダウンロードが終了すると、次のように表示されます。 > 226 File send OK. > ftp: 6436200 bytes received in 34.31Seconds 187.58Kbytes/sec. なお、今回は使いませんが、ファイルをアップロードする場合には、転送モード 設定後、「put ファイル名」と打ち込めばOKです。 (※)用語解説 ・テキストファイル 文字データだけからなるファイル。つまり、テキストエディタで正常に読む ことができるファイルのこと。 (文字コードの違いにより、テキストファイルでも正常に読めないことがある。 これがいわゆる文字化け) http://e-words.jp/w/E38386E382ADE382B9E38388E38395E382A1E382A4E383AB.html ・バイナリファイル テキストファイル以外のファイル。つまり、テキストエディタでは正常に 読めないファイルのこと。 http://e-words.jp/w/E38390E382A4E3838AE383AAE38395E382A1E382A4E383AB.html ------------------------------------------------------------------------ ● 切断 サーバとの接続を解除し、FTPコマンドを終了するには、「quit」と入力します。 > ftp> quit > 221 Goodbye. ------------------------------------------------------------------------ ● 自動処理 転送するファイルがあらかじめ分かっているなら、ここまでの作業で手入力した 内容を書き連ねたテキストファイルを準備しておくことで、FTPコマンドを自動的に 実行させることができます。 では、今回のダウンロード作業で、FTPコマンド中で入力した内容を寄せ集めて みましょう。 > anonymous > (パスワード) > binary > get "pub/opera/win/900/int/Opera 9 International Setup.exe" > quit ここまで、ずいぶんとややこしい作業をした気がしますが、実は、たった5回入力 しただけなのですね。 (正確には、FTPコマンド起動を含めて、6回入力しています) そして、作業を自動化するときに必要な情報は、この、寄せ集めた5行だけです。 では、テキストエディタで上の5行だけを書いて、適当なファイル名で保存して 下さい。 ここでは、そのファイルが「E:\ftpcommand.txt」だとして説明を続けます。 FTPコマンドで入力を自動化するときは、オプション「-s:ファイル名」を使います。 今回の場合でいえば、次のようになります。 > FTP -s:E:\ftpcommand.txt ftp.opera.com すると、FTPコマンドが「E:\ftpcommand.txt」に記述した内容に従って自動実行 されます。 > Connected to get1.opera.com. > 220 (vsFTPd 2.0.3) > User (get1.opera.com:(none)): > 331 Please specify the password. > > 230 Login successful. > ftp> binary > 200 Switching to Binary mode. > ftp> get "pub/opera/win/900/int/Opera 9 International Setup.exe" > 200 PORT command successful. Consider using PASV. > 150 Opening BINARY mode data connection for pub/opera/win/900/int/Opera 9 Intern > ational Setup.exe (6436200 bytes). > 226 File send OK. > ftp: 6436200 bytes received in 34.72Seconds 185.38Kbytes/sec. > ftp> quit > 221 Goodbye. 起動後何もしなくても勝手に、接続、ダウンロード、そして切断、と進んでいく はずです。 ------------------------------------------------------------------------ 今回はここまでです。 お疲れ様でした! 次回の予定は「コピーコマンド」です。 MS-DOSには、COPY、XCOPYなど、いくつかのコピーコマンドがあります。 そしてそれぞれに、色々な使い方があります。 このメルマガでも様々な場面で登場してきましたが、コマンドごと、場面ごとの バラバラの紹介しかできていないような気がしますので、復習を兼ねて、1つに まとめてみます。 非常に多機能なコマンドばかりですので、まとめきれるかどうか、ちょっと あやしいですが……。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■ コメントをお待ちしています ------------------------------------------------------------------------ 皆さんからの感想・質問・要望をお待ちしています。 「こんなテーマを扱ってほしい」 「こんなことはできるの?」 「このへんが分かりにくかった」 「1回の分量を増やしてほしい/減らしてほしい」 など、掲示板(下記URL)まで気軽にお願いします。 http://otd9.jbbs.livedoor.jp/dos/bbs_thread (スレッド表示) http://otd9.jbbs.livedoor.jp/dos/bbs_tree (ツリー表示) メールでもコメントを受け付けておりますので、そちらもご利用下さい。 tetrahedrane@yahoo.co.jp なお、いただいたコメントは、本マガジン上で引用する場合があります。 (メールアドレスやお名前は一切公開いたしません) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ● 感想・質問宛先 http://otd9.jbbs.livedoor.jp/dos/bbs_tree tetrahedrane@yahoo.co.jp ● 広告募集 当メルマガへの広告掲載をご希望の方は、下記アドレスまでお願いします。 tetrahedrane@yahoo.co.jp ● メルマガ交換広告募集 当メルマガとのメルマガ交換広告をご希望の方は、下記アドレスまでどうぞ。 tetrahedrane@yahoo.co.jp ● 登録・解除・バックナンバー http://www.geocities.jp/tetrahedrane/column/dos/ このメールマガジンは、『まぐまぐ』を利用して発行しています。 http://www.mag2.com/m/0000106066.htm (c) 2003-2006 Chisato Hayahoshi