如何在MacOS Terminal中使用大于10的基数指定范围

时间:2019-06-16 16:49:46

标签: macos terminal range base

我正在使用

curl -0 https://cdn.(website).com/[range].(extension) -o "#1.(extension)"

以下载文件名值范围内的文件。

如何在高于10的底数中指定范围(我的目标是使36底数包含0-9,a-z)? 例如[000-zzz]

1 个答案:

答案 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