とあるPDFを階層ごとダウンロードしたくてこんなパイプラインを書いてみました。
echo "http://www.hogehoge.co.jp/aaa/bbb/ccc/ddd.pdf" | \
sed -E "s#(^http://[^/]+/)(.+)\$#./\2 \1\2#g" | \
xargs -I {} echo "curl --create-dirs --output {}" |sh
こうするとダウンロードしたデータを./aaa/bbb/ccc/ddd.pdf
に保存してくれます。
sedでURLを./aaa/bbb/ccc/ddd.pdf http://www.hogehoge.co.jp/aaa/bbb/ccc/ddd.pdf
に分解してます。
xargsではスペースで分けてもひとつの引数として渡されちゃうみたいなのでこんな変な書き方になってます。改善案ありましたらコメントくださいませ。
MBAのコンソールで動作確認OKでした。