2016-07-04 13 views
0

私がダウンロードしたい画像リンクのリストを持っている.txtファイルがあるとします。 exaple:私が使用ファイル名をtxtファイルのURLリストにダウンロードして変更する

image.jpg 
image2.jpg 
image3.jpg 

cat images.txt | xargs wget、それは次の形式を持つ別の.txtファイルを提供することであり、私は今、何をしたいかちゃんと

に動作します:

some_id1:image.jpg 
some_id2:image2.jpg 
some_id3:image3.jpg 

何I ':'の各行を分割し、右にリンクをダウンロードし、ダウンロードされたファイル名を左に表示されているIDで変更します。

私は何とかwget image.jpg -O some_id1.jpg

を使用したいので、出力は次のようになります。

some_id1.jpg 
some_id2.jpg 
some_id3.jpg 

任意のアイデア?このようなタスクのための

+0

[bashの値のペアのループ](http://stackoverflow.com/questions/28725333/looping-over-pairs-of-values-in-bash)の可能な複製 – tripleee

答えて

0

私の後藤はawkのである:

while read line; do lfn=`echo "$line" | awk -F":" '{ print $1".jpg" }'` ; rfn=`echo "$line" | awk -F":" '{ print $2 }'` ; wget $rfn -O $lfn ; done < images.txt 

これは前提、もちろん、すべてのローカルファイル名は拡張子が.jpgの持っている必要があります。

関連する問題