結城浩
2000年1月15日
朝、ふと思い立ってNet::FTPの練習をしてみようと思う。 perldoc cpan でCPANの使い方を調べ、 perl -MCPAN -e shell; と実行してみると、cpan> というプロンプトが現れるので、 CPANのインタラクティブモードに入った(ようだ)。 そこでおもむろに、 install Net::FTP と入力すると何やらごちゃごちゃと表示されてCPANからダウンロードを試みる。 しばらくすると自分でテストをはじめOKだよ、と言われる。 次に、 perldoc Net::FTP と入力してモジュールの使い方を調べる。 試しにホームページのindex.htmlをgetしてみる。 以下のようなスクリプトを書く。
use Net::FTP; $ftp = Net::FTP->new("my.host.name", Debug => 1); $ftp->login("myloginname", "mypassword"); $ftp->cwd("mydirectoryname"); $ftp->get("index.html"); $ftp->quit;
(もちろんmyではじまる文字列は変えて実行する) これを、動かすとネットにつながって index.html がgetできた。 あっけないくらい簡単だ。 getをputに直せばputもできる。
ふむ。
これを応用すれば「指定したファイルのうち、 前回putしてから更新したファイルのみを指定したディレクトリにputする」 というのは自動化できそうだ。 つまりこれはホームページの更新ですね。 まあ、Net:FTPを使わなくても、 systemでftp.exeを動かしてもできるのですが。