0.まえがき
いつも使うGUI FTPクライアントもいいけど、
たまには、ダブルクリック一つで転送完了!
っていうのも味わってみませんか?
1.目的
定型的(つまり、毎回同じファイルを送るような場合)なFTP処理に対し、
簡単なFTP用スクリプトを組むことで、省力化を行う。
2.用意するべきもの
ftpを起動するバッチ(シェル)と、実際に何をやるべきかを書いた、
FTPスクリプト(のようなもの)が必要になります。
3.やるべきこと(Windows編)
Windowsで、FTPスクリプトを読み込ませるには、
ftp -s:スクリプトファイル
という風に、ftpを起動してやることになります。
つまり、バッチファイルには、
ftp -s:%1
のような一行を記述しておき、
autoftp.bat ftp.txt
のように起動すれば良いでしょう。
(ftp.batという名前にすると、無限ループになったりします(^^;)
では、FTPスクリプト(ftp.txtに相当)を書いてみましょう。
・ファイルをアップロードするよ編 (#以降はコメントとみなして下さい)
open pcg-c1s | # 1行目には、open ホスト名を記述します。 | |
hogeuser | # 2行目には、ユーザ名を記述します。 | |
hogepasswd | # 3行目には、パスワードを記述します。 | |
ascii | # アップロードするファイルに応じて、モードを設定します。 | |
mkdir hogedir | # mkdir ディレクトリ名でディレクトリを作ります。 | |
literal site chmod 705 hogedir | # literal site chmod Mode ディレクトリ名でディレクトリのパーミッションを変えます。 | |
cd hogedir | # cd ディレクトリ名で作業ディレクトリを変えます。 | |
lcd localhogedir | # lcd ディレクトリ名でローカルの作業ディレクトリを変えます。 | |
put hogefile | # put ファイル名でアップロードします。 | |
literal site chmod 644 hogefile | # literal site chmod Mode ファイル名でファイルのパーミッションを変えます。 | |
bye | # byeでftpサーバからサヨナラします(^^; |
4.やるべきこと(UNIX編)
UNIXで、FTPスクリプトを読み込ませるには、
ftp -n < スクリプトファイル
という風に、ftpを起動してやることになります。
つまり、シェルには、
ftp < $1
のような一行を記述しておき、
ftp.sh ftp.txt
のように起動すれば良いでしょう。
スクリプト自体は、Windowsのものとほとんど同じですが、
UNIXごとにftpの実装が異なる※みたいなので、
実際は、「man ftp」して調べましょう!
※ユーザ名とパスワードを記述するところで、
UP-UXの場合 → user username, password
Slackware7.0(Linux)の場合 → user username password
のように、微妙に違ったりする。
では、FTPスクリプト(ftp.txtに相当)を書いてみましょう。
・ファイルをダウンロードするよ編 (#以降はコメントとみなして下さい)
open pcg-c1s | # 1行目には、open ホスト名を記述します。 | |
user hogeuser hogepasswd | # 2行目には、ユーザ名とパスワードを記述します。 | |
ascii | # ダウンロードするファイルに応じて、モードを設定します。 | |
cd hogedir | # cd ディレクトリ名で作業ディレクトリを変えます。 | |
lcd localhogedir | # lcd ディレクトリ名でローカルの作業ディレクトリを変えます。 | |
get hogefile | # put ファイル名でアップロードします。 | |
bye | # byeでftpサーバからサヨナラします(^^; |
5.というわけで
快適なftpライフを送ってくださいね〜(^^)/