ホームページ更新用スクリプト(upload.pl)

upload.pl

1. 必須モジュール

以下のものが必要になります。適当に調達して下さい。

Net::FTP (libnetに含まれる)
File::Listing (libwwwに含まれる)

*圧縮していない upload.pl/uploadrc
*書庫ファイル upload.tar.gz


2. 最近の変更点


3.内容について

UpFTPに手を加えて、 個人的に使いやすくなるように改良したもの。 結城さん、ありがとう!

3.1 改良点

結城さんがあげていたtodoも若干やってみました。 つまり、ディレクトリごとコピーしてしまうようにできています。 htmlの更新などに使ってください。

3. 使い方

3.1 設定ファイルの準備

サンプル

uploadrcの名前を変更して使ってください。 ~/.uploadrcに設定を書き込みましょう。 もちろん、プログラム内部にそのまま埋め込んでもよいのだけれど、 .uploadrcの設定が優先されるので注意。

Windowsを利用している人は、この設定ファイルを使えません。 スクリプト内に直接、諸設定を書き込んでください。 (もしくは、HOMEという環境変数を設定してください。)

3.1.1 default

オプションを省略したときに選択されるサーバの番号。

3.1.2 server

サーバの番号をつけて、設定を使い分ける。 この行のあとに、そのサーバの設定をしてください。 とりあえずつけておいた方が、動作は安定します。 適当に数字をつけてください。

3.1.3 debug

動作が不信なときにオプションをつけてみてください。 それ以外の時は必要なさそうです。

3.1.4 hostname, username, password

それぞれ、必要なことを書いてください。 passwordを書いたときは、くれぐれも扱いに注意しましょう。

3.1.5 remoterootdir

送信先での、あなたが使う一番上のディレクトリのこと。

3.1.6 localroodir

送信元(あなたの手元のマシン)での、あなたが作っているhtmlの一番上の ディレクトリのこと。

3.1.5 setfilelocation

送信の履歴をスクリプトで作るので、 それを保存する場所を指定しましょう。 好きなところでかまいません。

3.2 送る

スクリプトを実行しましょう。 はじめは設定が正しいかどうかを確認するために、 テストをしても良いかもしれません。

3.3 送信履歴を消去するには

setfilelocationで指定したディレクトリにある、「send.db」を消しましょう。 それだけでだいじょうぶです。

3.4 オプション

3.4.1 switch command

-s [number] を入れることで、設定ファイルに書かれたサーバを使い分けることができる。

3.4.2 list mode

-l をつけることで、今までに送信したファイルの一覧をみることができます。 また、ファイルの更新時間も併記します。

3.4.3 noftp mode

noftp=1としたのと同様の効果を得ることのできる、 「-n」オプションを用意しました。 使うかどうかはわからないですけどね。。

4.やってみようかと思っている事


4 存在意義

自分でこねくりまわす事のできる、 実用になるスクリプトが欲しかったのでやってみました。 さらに多機能なものありますが、僕にはこれくらいで十分です。 行数が、いつのまにか長くなっていました。いつのまにか、450行オーバー。 二倍を越す行数になってしまってます。。

これをいじってみたい人へ。 これを土台にしても構いませんが、UpFTP のほうが本家ですよ。