Bir dosya listesi indirin ve alan adı dosya adı olarak kullanın


1

İndirmek için harika bir dosyam var.

wget -i list_of_urls

ama benim sorunum, bu wget indirilen dosyanın dosya adını kullanıyor. URL adının tamamını kullanmak için bir yol (veya farklı bir araç) var mı, f.e.

http://www.example.com/file1.html
http://www.example.com/file2.html

Dosyalara yönlendir:

http___www_example_com_file_1.html
http___www_example_com_file_2.html  

Yanıtlar:


1

Bazı basit bash scriptleri kullanın. Örneğin, URL’lerle bir "foo" dosyanız varsa:

http://www.google.com/index.html
http://www.cnn.com/index.html

Koşabilirsin:

for i in `cat foo`; do wget $i -O `echo $i | sed 's/[^A-Za-z0-9]/_/g' | sed 's/_html$/.html/'`; done

hangi üretir

http___www_cnn_com_index.html
http___www_google_com_index.html

1
ÇALIŞIYOR bir cazibe gibi.
Karimi

@Karimi Soruyu cevaplamaktan ve cevaplamaktan çekinmeyin!
patrickmdnet

0

Kullan "-x" seçeneği burada belgelenmiştir . Örneğin, içeriği olan bir "foo" dosyası verilir:

http://www.google.com/index.html
http://www.cnn.com/index.html

Eğer koşarsan

wget -x -i foo

o zaman bu dosyaları alacaksınız:

www.google.com/index.html
www.cnn.com/index.html

Güzel ama gerçekten tam adı olan bir dosyaya ihtiyacım var
PascalTurbo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.