ftpコマンドで転送状況を表示させるTech TIPS

ftpコマンドでgetやputしている場合、デフォルトでは何も表示されないので、進行状況が分かりづらい。hashコマンドでhash表示モードをオンにすると、2KB転送するごとに1つ「#」記号が表示され、転送状況を把握しやすくなる。

» 2006年08月05日 05時00分 公開
[打越浩幸デジタルアドバンテージ]
「Tech TIPS」のインデックス

連載目次

ftpコマンドで転送状況を表示させる

対象OS:Windows 2000/Windows XP、Windows Server 2003


ftpでファイル転送が止まっているのか進んでいるのか分からない!

 ftpのgetやputコマンドでファイルを受信したり、送信する場合、デフォルトのままでは、転送が終了するまで、何もメッセージが表示されない。大きなファイルを送受信している場合や、回線速度が非常に遅い場合、もしくは回線の状態が不安定で転送が滞っているような場合、本当に転送が正しく行われているのか(転送が進んでいるのか)が分かりづらい(LANのLEDランプなどを見れば判断することは可能だが、慣れないと簡単ではない)。

 GUIベースのFTPツールなら、転送状況に応じてプログレスバー表示が出たり、転送済みデータサイズなどが表示されるものが多いので、状況を把握しやすい。一方、コマンドライン版のftpでは利用できない。

 だが、ftpのオプションを利用すると、転送状況に応じて文字(記号)を表示させることができる。本Tech TIPSでは、その方法について解説する。

「hash」コマンドでファイル転送の進行状況を表示させる

 ftpによるgetやput時にその進行状況を表示させるには、「hash」というコマンドを利用する(「ハッシュ表示」の切り替えコマンド)。

 このコマンドに引数はなく、実行するたびに、「Hash mark printing: On」と「Hash mark printing: Off」という2つの状態が切り替わる。デフォルトはオフである。現在の状態は「status」コマンドで確認できる。

 hash(ハッシュ)とは、切り刻むとか、細切れにするという意味である。

C:\>ftp ftp.example.co.jp ……ftpサイトに接続
Connected to ftp.example.co.jp.
220 Microsoft FTP Service
User (ftp.example.co.jp:(none)): user01
331 Password required for user01.
Password:
230 User user01 logged in.
ftp> hash ……hash表示をオンにする
Hash mark printing On  ftp: (2048 bytes/hash mark) . ……オンになった
ftp> status ……現在の状態の確認
Connected to ftp.example.co.jp.
Type: ascii; Verbose: On ; Bell: Off ; Prompting: On ; Globbing: On
Debugging: Off ; Hash mark printing: On . ……hash表示はオン
ftp>



 hash表示がオンの状態で転送すると次のように、2048bytes(2KB)ごとに1つ、「#」記号が表示される。この#記号の表示状態を見ていると、転送が正しく行われているかどうかを確認できるだろう。もしずっと長い時間表示されなければ、回線状態が相当悪いと判断できる。

 ただし数MB(もしくはそれ以上)もあるような大きなファイルだと、画面いっぱいに#記号が表示され、(表示内容が変わらないので)まるで止まっているかのように見えるかもしれないので、注意していただきたい。

ftp> bin ……バイナリ転送モードにする
200 Type set to I.
ftp> get data1.xsg
200 PORT command successful.
150 Opening ASCII mode data connection for data1.xsg(218679 bytes).
############……(中略)……############
226 Transfer complete.
ftp: 218679 bytes received in 0.03Seconds 7054.16Kbytes/sec.
ftp> get filelist.txt
200 PORT command successful.
150 Opening ASCII mode data connection for filelist.txt(726676 bytes).
############……(中略)……############
226 Transfer complete.
ftp: 726676 bytes received in 0.11Seconds 6606.15Kbytes/sec.
ftp>



「Tech TIPS」のインデックス

Tech TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。