我正在使用
curl -0 https://cdn.(website).com/[range].(extension) -o "#1.(extension)"
以下载文件名值范围内的文件。
如何在高于10的底数中指定范围(我的目标是使36底数包含0-9,a-z)? 例如[000-zzz]
答案 0 :(得分:0)
我不知道在bash中以非标准基数打印数字的简便方法,但是您可以使用bash的大括号扩展以文本方式生成范围。您可以嵌套括号扩展名,因此{{0..9},{a..z}}
将为您提供数字,后跟小写字母。然后堆叠其中的三个以获得所有三个项目的序列。
请注意,这与curl
的括号和花括号扩展功能不同,因此您不能在输出文件名(示例中为#1
)中使用它。但是您可以创建一个shell for
循环,并使用shell变量创建输出文件名。像这样:
for itemnum in {{0..9},{a..z}}{{0..9},{a..z}}{{0..9},{a..z}}; do
curl -0 https://cdn.(website).com/${itemnum}.(extension) -o "${itemnum}.(extension)"
done