Как указать диапазон, используя базы больше 10 в MacOS Terminal - PullRequest
0 голосов
/ 16 июня 2019

Я использую

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

для загрузки файлов в диапазоне значений имени файла.

Как я могу указать диапазон в базе выше, чем база 10 (я хочу, чтобы база 36 охватила 0-9, az)?ех.[000-ZZZ]

1 Ответ

0 голосов
/ 16 июня 2019

Я не знаю простого способа печати чисел на нестандартной основе в bash, но вы можете использовать расширение скобки bash для генерации диапазона в текстовом виде. Вы можете вкладывать расширения скобок, поэтому {{0..9},{a..z}} даст вам цифры, за которыми следуют строчные буквы. Затем сложите три из них, чтобы получить все последовательности из трех элементов.

Обратите внимание, что это отличается от расширения скобок и скобок curl, поэтому вы не можете использовать его в выходном имени файла (#1 в вашем примере). Но вы можете создать цикл оболочки for и использовать переменную оболочки для создания выходного имени файла. Примерно так:

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
...