Mac小ネタ(簡易ダウンローダ)

基本的に起動時にはユーザディレクトリ(/User/~、~はユーザ名)でスタートします。デスクトップが/User/~/Desktopです。日本語のファイル名は文字化けするので今回はデスクトップに「test」というフォルダを作り、そこにテキストエディタで「test.sh」というファイルを作ります。中身は以下をのように。
こんな感じに書いてみます。ではターミナルで設定及びスクリプトを起動してみます。
さぁこれでいっぱいダウンロードできました。今回は単純な連番のファイルをダウンロードするというものですし、リトライはしないし、タイムアウトには時間がかかるし、一度に一つずつダウンロードとかなり初歩的な作りです。でも最初に親しむには簡単で実用的なスクリプトです。くれぐれも大量にダウンロードして怒られないように自己責任で使って下さいね。またシェルコマンドについては他サイトを参考にして下さい。
#!/bin/sh - FOLDER="down1" #ダウンロードしたファイル(今回は画像)を保管するフォルダ名 ROOT="http://www.hogehoge.com/photo/best/" #ダウンロード元サイト(今回はbestディレクトリ以下の001.jpg〜120.jpgをダウンロードと仮定) count=1 #最初の番号 mkdir ../$FOLDER while [ $count -lt 120 ] #最後の番号 do if [ $count -lt 10 ]; then #10以下の番号に00をつける tmp=00$count elif [ $count -lt 100 ]; then #100以下の番号に0をつける tmp=0$count else tmp=$count fi ftp $ROOT$tmp.jpg mv $tmp.jpg ../$FOLDER/$tmp.jpg count=`expr $count + 1` done exit
こんな感じに書いてみます。ではターミナルで設定及びスクリプトを起動してみます。
% cd Desktop/test #testフォルダに移動 % chmod 744 test.sh #test.shを実行可能にします % ./test.sh #実行 Requesting http://www.hogehoge.com/photo/best/001.jpg 100% |***************************************************************************************| 12345 46.94 KB/s 00:00 12345 bytes retrieved in 00:00 (46.89 KB/s) Requesting http://www.hogehoge.com/photo/best/002.jpg 100% |***************************************************************************************| 45678 19.97 KB/s 00:01 45678 bytes retrieved in 00:01 (19.95 KB/s) 〜くり返し〜 Requesting http://www.hogehoge.com/photo/best/120.jpg 100% |***************************************************************************************| 12345 46.94 KB/s 00:00 12345 bytes retrieved in 00:00 (46.89 KB/s) %
さぁこれでいっぱいダウンロードできました。今回は単純な連番のファイルをダウンロードするというものですし、リトライはしないし、タイムアウトには時間がかかるし、一度に一つずつダウンロードとかなり初歩的な作りです。でも最初に親しむには簡単で実用的なスクリプトです。くれぐれも大量にダウンロードして怒られないように自己責任で使って下さいね。またシェルコマンドについては他サイトを参考にして下さい。
コメントする