スクリプト・ファイルで自動実行させる

 以上がftpコマンドの対話型モードの基本操作である。次に非対話型モードでftpコマンドを使ってみよう。

 非対話型モードでは,ユーザー名/パスワードや実行させたい一連のサブコマンドをスクリプト・ファイルに記述しておき,それを読み込ませることで自動的にファイル転送を実行させることができる。この非対話型モードでは,機能に応じてさまざまなオプション・パラメータが用意されている(表2)。

表2●ftpコマンドでよく使われるオプション・パラメータの例
表2●ftpコマンドでよく使われるオプション・パラメータの例

 ここでは「ftpscript.ftp」というスクリプト・ファイルを作成した。このファイルの内容は,FTPサーバーの/array1/nikkeibpディレクトリにあるすべてのテキスト・ファイルを,ローカル・コンピュータのc:\Tempディレクトリにダウンロードするというものである。

 それでは実際にftpscript.ftpを非対話型モードで実行させてみよう。実行するスクリプト・ファイルを指定する「-s」オプション・パラメータと,インタラクティブ・モードをオフにしてからftpコマンドを実行する「-i」オプションを組み合わせて,以下のように打ち込む。

 C:\Temp>ftp -i -s:ftpscript.ftp

 実行すると,ftpscript.ftpの内容を読み込んでサブコマンドを順次実行していく(図7)。インタラクティブ・モードがオフの状態でmgetサブコマンドを実行するので,確認なしにファイルをダウンロードする。このとき,各ファイルの容量や転送速度がメッセージとして表示される。

図7●スクリプト・ファイルを読み込んで自動実行させる<br>「-s」オプションは,スクリプト・ファイルを指定して実行するときに使う。「-i」オプションを組み合わせると,インタラクティブ・モードをオフにしてからスクリプト・ファイルを実行する。
図7●スクリプト・ファイルを読み込んで自動実行させる
「-s」オプションは,スクリプト・ファイルを指定して実行するときに使う。「-i」オプションを組み合わせると,インタラクティブ・モードをオフにしてからスクリプト・ファイルを実行する。
[画像のクリックで拡大表示]

 すべてのテキスト・ファイルを取得し終えたら,ftpscript.ftpの最終行にある「quit」サブコマンドを実行し,FTPサーバーとの接続を切断してコマンド・プロンプトに戻る。これでスクリプト・ファイルを用いたftpコマンドの処理は終了となる。