批量下載我有這樣的情況:我想下載一個名爲像這樣的一堆文件:wget的:與增量
683482, 684483, 685484, 686485, 687486, 688487, 689488, 690489, 691490, 692491, ...
正如你可以看到,文件編號爲1001的增量所以,什麼是批量下載的最簡單方法?
批量下載我有這樣的情況:我想下載一個名爲像這樣的一堆文件:wget的:與增量
683482, 684483, 685484, 686485, 687486, 688487, 689488, 690489, 691490, 692491, ...
正如你可以看到,文件編號爲1001的增量所以,什麼是批量下載的最簡單方法?
請試試這個:
#!/bin/bash
for i in {683482..1000000..1001}
do
wget $i
done
ECHO OFF
CLS
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /L %%A IN (683482,1001, 692491) DO (
SET stringWget=wget %%A
!stringWget!
)
我會走一步看一步:
ECHO OFF
防止Windows命令行從上顯示的每個命令的命令提示符(這是可選的;但是, ,看起來很乾淨)。
CLS
清屏;這將清除命令提示符的控制檯顯示。它does not clear the temporary environment variables or command history。
SETLOCAL ENABLEDELAYEDEXPANSION
用於非阻塞語句並且是Windows特定的;當我們使用%ENVIRONMENTVARIABLE%
時,我們暗示阻塞語句,當我們使用!ENVIRONMENTVARIABLE!
時,我們暗示非阻塞語句(意思是,在循環中,我們看到更新的值爲%A
,而不是在進入循環時重複%A
的值)。我們在批處理文件中使用%%
而不是%
。
FOR
循環的語法可以在參考中找到。
或'用於((ⅰ= 683482; I <= 1000000; I = I + 1001))' – Cyrus
我不在bash編程專家。可能是這個作品或不我不知道。 – kodmanyagha
'wget/$ i' 此外,wget接受多個URL參數。爲了更快的下載,將URL添加到變量中,然後只執行一次wget。只需一次DNS查找,並且可能會有一個持久連接。 –
rockdaboot