Ana*_*awa 5 windows download wget command-line
我有一个案例,我想为每个读者触发一个包含 114 个文件(朗诵)的列表的自动下载,
例如,如果我想为名为 的读者下载朗诵,abkr
文件的 url 将如下所示..
http://server6.mp3quran.net/abkr/001.mp3
http://server6.mp3quran.net/abkr/002.mp3
...
http://server6.mp3quran.net/abkr/113.mp3
http://server6.mp3quran.net/abkr/114.mp3
只是这些是古兰经的背诵,所以它们总是有 114
有没有一种简单的方法可以command line
在Windows上循环使用?
您还没有说明操作系统,但如果您使用 *nix 和 Bash,则以下工作:
wget http://server6.mp3quran.net/abkr/{001..114}.mp3
Run Code Online (Sandbox Code Playgroud)
一个适用于任何 shell 的解决方案:
#!/bin/sh
for i in $(seq -w 1 114); do
printf 'http://server6.mp3quran.net/abkr/%s.mp3 ' $i
done | xargs wget
Run Code Online (Sandbox Code Playgroud)
或者,如果系统seq
上不存在:
#!/bin/sh
i=1
MAX=114
while [ $i -le $MAX ]; do
printf 'http://server6.mp3quran.net/abkr/%03d.mp3 ' $i
i=$((i+1))
done | xargs wget
Run Code Online (Sandbox Code Playgroud)
只需将其复制并粘贴到 shell 中或将其保存在脚本文件中并运行它。
为了完整起见,这是一个仅批处理的解决方案:
@ECHO OFF
SetLocal EnableDelayedExpansion
FOR /L %%G IN (1, 1, 114) DO (
SET num=%%G
IF 1!num! LSS 100 SET num=0!num!
IF 1!num! LSS 200 SET num=0!num!
wget http://server6.mp3quran.net/abkr/!num!.mp3
)
EndLocal
Run Code Online (Sandbox Code Playgroud)
编辑 1:删除了不必要的大括号。
编辑 2:将计数器起始值更正为 1。
归档时间: |
|
查看次数: |
4493 次 |
最近记录: |