ログインが必要なページのパッケージなどをダウンロードする

最近仕事でストレージ・アプライアンスを利用していて、諸々のツールやパッケージをサポートページからダウンロードする機会があり、その際にサポートページのログインが必須だったりして、いちいち手元のOSXにダウンロードしてからSCPでサーバに送るという作業が完全に手間になっていたので色々調べてみた。

結論下記のようにwgetにPOSTパラメータを渡して上げれば上手く行った。

wget --post-data user=your_name&password=your_password https://example.com/bigfile.zip

動き的にはログイン必須の場合、ログインページにリダイレクトされ、そこにpostdataが渡るのでログインが成功し、その後もとのファイルにリダイレクトされるからダウンロードできるという感じ。ダウンロード先の作りがしっかりしていれば広く使えるテクニックだと思うので覚えておくと良さそう。