【コラム】
OS X ハッキング!
33 それにつけてもダウンローダはcurl
2002/10/18
キーを激しく叩きすぎたためか、G4 Cubeに付いてきたApple Pro Keyboardが不調に陥った。そこで突如キーボード購入計画が浮上したわけだが、あれこれと悩んだ結果、往年のNeXT ADBキーボードを彷彿とさせるカラーリングの「PFU Happy Hacking Keyboard Lite2(USB、黒、ASCII配列)」に決定。しかし…どうもキータッチが筆者の好みではない。USB-ADBコンバータの「iMate」を購入し、元祖カーソルキーなしHHK(HHKシリーズは3台所有している)をつなごうかと思案中だ。
さて、今回はダウンローダとして使えるコマンド「curl」を取りあげてみたい。Webブラウザのようにクリックすればダウンロード開始、というほど簡単ではないものの、レジューム機能などブラウザにない機能は利用価値が高い。当コラムでも、コマンドの実行例などでたびたび使用している。具体例を挙げつつ、その主要な機能を紹介してみよう。
まずはオーソドックスにURLを指定しダウンロードする方法について。これは簡単、curlコマンドに「-O」オプションを与え、ファイルのURLを引数とすればいい。IEで発見したファイルを例にすると、まずTerminal側で「curl -O 」とだけ入力しておき、IEで表示したファイルのリンク上で、コンテキストメニューの[リンクをクリップボードにコピー]を選択、Terminalに移動してペーストすればいい。プロトコルにはHTTPのほかFTPも利用できるので、認証の必要がないファイルはこの方法でOKなはずだ。複数のファイルを異なるサイトからダウンロードするときには、このようなコマンドラインを記述したシェルスクリプトを作成しておけばいいだろう。
○URLを指定してファイルをダウンロード
% curl -O
意外に面倒なのが、複数の画像ファイルをダウンロードする作業だ。Webページに複数のJPEG画像が貼り付けられていることを想像してほしい。Webアーカイブとして保存(IE5.xの場合)するかダウンローダの力でも借りないかぎり、1つ1つ画像をディスクにダウンロードすることになるはずだが、curlならば曖昧なファイル名で一括ダウンロードできる。たとえば、連番のファイル名が付けられたJPEGファイル(01l.jpg〜09l.jpg)をダウンロードするときの実行例は次のとおり。[a-z]のようにアルファベットも指定可能なので、いろいろ試してみよう。
○ファイル名に連番を含む画像ファイルをまとめてダウンロード
% curl
IEやMozillaなどのWebブラウザには、中断したダウンロードを再開する「レジューム機能」は用意されていないが、curlならばURLの前に「-C - -o 中断したファイル名」を指定すればレジュームできる。サーバ側がレジュームに対応していなければならないが、混雑しているサイトからファイルをダウンロードするときなど、途中で何度も通信が途絶えてしまうときには有効な方法といえる。もちろん、コマンドラインを何度も入力するのは手間がかかるので、[control]-[p]で履歴を遡りつつ作業することがポイントだ。
○中断したダウンロードを再開(レジューム)
% curl -O
↓
通信が途絶えた
↓
[control]-[c]でダウンロードを中断
↓
% curl -C - -o archive.tgz
↓
通信が途絶えたら、中断の作業と「curl -C - -o …」の実行を繰り返す
ところで、Mac OS X 10.2に収録されているcurlのバージョンは7.7.2であり、最新版(7.10.1)より少し古い。開発環境さえあれば簡単にビルドできるので、最新版に乗り換えてもいいだろう。Changelogを読めばわかるが、BugFixやさまざまな機能の追加も行われている。詳しい情報については、curlのwebサイトを参照してほしい。
ヘッドライン
- アップル「Aperture 3」発表、プロ向けの性能にiPhotoの容易さを融合[02:28 2/10]アップル
- Appleの「A4」プロセッサとは何か? - エンジニアらの意見[01:54 2/10]アップル
- 医療ソリューション企業Epocrates、iPadは医療現場で人気と報告 - 臨床医2割が購入意向[21:00 2/9]アップル
- 米Apple CEOジョブズ氏がNYで秘密の会合 - 大手新聞社幹部らを訪問[21:00 2/9]アップル
- コーレル、「Corel WinDVD 2010」のアップデートを公開[20:46 2/9]ソフト
- Microsoft、Windows 7の「バッテリ交換」警告問題に回答[20:33 2/9]Windows 7
- ネットユーザーがキーボードでこだわるポイント - アイシェアが調査[19:53 2/9]周辺機器
- クレオ、"ブライダル"に欠かせないソフト「筆まめ Braidal 6」2製品を発売[19:42 2/9]ソフト
- ドスパラ、ドイツ「ROCCAT」製ゲーミングマウスとキーボードを販売開始[19:39 2/9]ドスパラ
- 米Micron台湾とNanya、42nmの2GビットDDR3を共同で開発[18:47 2/9]自作







