自動的にFTPする方法
自動的にFTPする方法ファイルサーバーから210.169.91.139へバックアップをFTPでGET
<autoftp.bat>
ftp -s:ftpcmd.txt>>ftplog.txt
<ftpcmd.txt>
open 210.169.91.139
appuiRmz
e271/svz5R
binary
prompt
lcd G:\Dev\船井総研\backup
mget pgback*
bye
WindowsやUNIX系OSには、実はFTPクライアントが最初からついています。
最初に実感値をつかんでいただくために、とりあえずやってみます!
(1)ftpcmd.txtというファイル名で以下を保存してください。 ※必要箇所を書き換えてください。 open www.ichikoro.com ← 適当なサーバ名に
xxxxx ← ID
xxxxx ← パスワード
cd ディレクトリ名 ← ディレクトリを変更(しない場合はトル)
ascii ← ASCIIモードにする (バイナリは「binary」に変更)
get ファイル名 ← ダウンロード(アップロードは「put ファイル名」に)
bye
(2)autoftp.batというファイル名で下の一行を保存してください。
ftp -s:ftpcmd.txt
(3)autoftp.batをダブルクリック!
この二つのファイルは同じ階層に置いてくださいね。 すると自動的にダウンロード(アップロード)がはじまります。 さぁ、何でこういうことが出来たのでしょうか? ここまでの知識でも十分ですが、理由が知りたい方は下の記事をどうぞ。
■とりあえず使ってみよう! 試しにWindowsでFTPする方法を試してみましょう。 まずは、MS-DOSプロンプト(DOS窓)を開きます。 ここで、 C:\>ftp と入力し、リターンキー(最近はエンターキーか(^^;)を押してください。 C:\>ftp ftp> するとこうなりましたか? ■サーバのファイル一覧を取得しよう! では、どこかのサーバに接続してファイル一覧を見てみましょう。 ftp> open www.ichikoro.com openの後にサーバ名を入力しますすると、 Connected to ichikoro.com. 220 w6.yukaido.ne.jp FTP server (Version wu-2.6.0(1) Tue Jun 20 06:13:16 JST 2000) ready. User (ichikoro.com:(none)): と聞いてくるので、そのままユーザーIDを入力します。 331 Password required for ユーザーID. Password: 同じようにパスワードを入力 230 User ユーザーID logged in. Access restrictions apply. ftp> このようになれば接続完了です! 早速 ftp> ls と打ってみましょう。 200 PORT command successful. 150 Opening ASCII mode data connection for file list. index.html.20020519 index.html.back index.shtml jcode.pl 226 Transfer complete. ftp: 90 bytes received in 0.06Seconds 1.50Kbytes/sec. このようにファイルの一覧を取得することが出来ました。 サーバから出る時は ftp> bye と打ちます。 すると簡単なメッセージが表示された後、FTPコマンドも終了します。
■自動化しよう!
このFTPコマンドを使用しファイルの取得とアップロードを自動化 することが、簡単にできます。 例えば、先ほど行った一連の流れを一つのファイルに書き出し、 適当な名前で保存しましょう。
ここでは ftpcmd.txt とします。
open www.ichikoro.com ←適当なサーバ名に
xxxxx ←ID
xxxxx ←パスワード
ls
bye
保存したら、以下のコマンドをDOS窓に打ちます。
C:\>ftp -s:ftpcmd.txt
すると、先ほどと全く同じことが起こったでしょうか? これをバッチファイルにしてみましょう。
ftp -s:ftpcmd.txt とだけ書いたファイルを autoftp.bat などと命名し、保存しましょう。
今度はこれを C:\>autoftp.bat とするか、もしくは直接ダブルクリックで実行することが 可能です。ここまでで、ピン!とこられたでしょうか? つまり、先ほどのファイルftpcmd.txtを、 open www.ichikoro.com ←適当なサーバ名に xxxxx ←ID xxxxx ←パスワード 【ファイルを取得するコマンド】 bye とすれば、ダブルクリック一発でファイルを取得することが 出来てしまうのです。子難しいプログラミングは一切必要あ りません。 ■ファイルを取得しよう + ファイルをアップロード! ファイルを取得するには、 ftp> get ファイル名 とするだけです。 逆にアップロードするには ftp> put ファイル名 とするだけです。 ASCIIモードとバイナリモードを切り替えるのは ftp> ascii ←ASCIIモードにする 200 Type set to A. ftp> binary ←バイナリモードにする 200 Type set to I. これだけなのです。チョー簡単です! ちなみにディレクトリを変更するのは ftp> cd ディレクトリ名 です。 これだけ覚えておけば十分でしょう。 ■まとめ(簡単テンプレート) さぁ、もう一回最初に出てきた物を見てみましょう! (1)ftpcmd.txtというファイル名で以下の内容を保存してください open www.ichikoro.com ← 適当なサーバ名に xxxxx ← ID xxxxx ← パスワード cd ディレクトリ名 ← ディレクトリを変更(しない場合はトル) ascii ← ASCIIモードにする (バイナリは「binary」に変更) get ファイル名 ← ダウンロード(アップロードは「put ファイル名」に) bye (2)autoftp.batというファイル名で下の一行を保存してください。 ftp -s:ftpcmd.txt (3)autoftp.batをダブルクリック! 納得できたでしょうか? 例えばこの実行結果をログファイルとして記録したい場合は、 autoftp.batを以下のように変更します。 ftp -s:ftpcmd.txt > ファイル名 ファイルが真っ白になり、その上に記録されます。 追加書き込みしたい場合は、 ftp -s:ftpcmd.txt >> ファイル名 これだけです。 無理してプログラミングする必要が一切無いのが分かりますよね?(^-^)
■おまけ Windowsには、コントロールパネルの中に「タスク」と言われる、 一定時間毎に、指定のアプリケーションを起動してくれる機能 が備わっています。 ※UNIXの場合は、cronがそれに該当します。
つまり、ここでautoftp.batを指定しておけば、何もすることなく 作業が終わってしまうわけです。もちろん端末は立ち上げておか なければいけなかったり、たまに失敗することもありますので確 認作業は必要ですが、格段に楽になりますよね
0 Comments:
Post a Comment
<< Home