ftpコマンド処理を自動化したい

» 2002年05月08日 00時00分 公開
[木田佳克ITmedia]

この記事は会員限定です。会員登録すると全てご覧いただけます。

 通常、ファイルをアップロード、ダウンロードを行えるftpコマンドでの処理は、プロンプト上でユーザー名とパスワードを要求される。wu-ftpdを始めとする多くのFTPサーバソフトでは、通常パスワードの要求時に「Password:」といった文字列が表示され、これに対して入力しなければならない。これでは自動処理が複雑になってしまう。

 しかし、ftpコマンドに「-n」オプションをつけると、ログインセッションが自動起動されなくなる。次のような内容のファイルを作成し、後述するよう「ftp -n」へ渡せばよい。

open ftp.exmple.com
user hegehge password
bin
prompt
cd directory
get sample1.zip
put sample2.zip
quit

 上記バッチ処理の内容を紹介しておこう。1行目は、「open」に続いてFTPサーバのドメイン名を記述する。2行目には「user」に続きユーザー名とパスワード。3行目以降には、通常のftpコマンドを順番に並べよう。ここでは、3行目でバイナリーモード、4行目でプロンプトモードをオフ、 5行目でディレクトリを変更を行い、6〜7行目でファイルのダウンロード、アップロードを行って最後の8行目でログアウトだ。

 最後にこの内容をファイル名「file」とした場合、次のように指定することでバッチ処理が開始されるのだ。

$ ftp -n < file

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ