[Unix] wgetコマンドでスラッシュがひとつ消える

wgetは、URLを指定するとファイルをダウンロードしてくれるとても便利なツールです。


たとえば

wget http://www.hatena.ne.jp

とすると、はてなのトップページが、index.htmlとしてローカルに保存されます。
身近で使っている例としては、Mona Wikiを tar.gzしたものを定期的に cronで wgetしてもらって、バックアップとして活用するという使い方があります。


さて今日、ブックマークの人気エントリに挙がっているサイトのエントリーページをwgetしようとしたところ

wget "http://b.hatena.ne.jp/entry/http://www.hariguchi.org/yoichi/english-study.html"

まだブックマークされていないというHTMLが返ってきました。
よくよく調べてみると、引数で渡した「http://www.hariguchi.org/yoichi/english-study.html」に含まれる // が / 勝手に変換されてしまい全く違うURLになってしまっているようです。
どうもwgetの挙動が怪しそうだということで、新しいwgetを入れたら改善されました。


Wget 1.9+cvs-stable⇒ // が / と変換されてしまう。
Wget 1.10 ⇒ 意図通り動作する


新しいwgetのインストールですが、以下の通りです。
wgetwgetをgetするのが面白いですね。

wget http://ftp.gnu.org/pub/gnu/wget/wget-1.10.tar.gz
tar zvxf wget-1.1.tar.gz
cd wget-1.10
./configure
make 
make install