{...}
- это расширение скобок оболочки , которое поддерживает списки типа { a, b, c}
(заменяется на a
, b
и c
) и последовательности чисел, такие как {0..13 }
(заменяется цифрами 0
, 1
... 12
, 13
) или символами {a ..d}
( a
, b
, c
, d
). (Раскрытие фигурных скобок не имеет ничего общего с заполнителем {}
, используемым xargs
).
Несколько странная последовательность, в которую расширяется {a..3}
, объясняется таблицей символов ASCII . Поскольку
не является числом, оба считаются символами, а расширение - это все символы между a
и 3
по числовому значению кодов символов. . Как это часто бывает, a
идет после 3
, поэтому последовательность идет вниз через заглавные буквы и числа от 9 до 3.
Как видно, смешивание букв и цифр в диапазоне вроде этого не очень полезно, но {a..z}
или {A ..Z}
может быть, а также аналогичные [a-z]
и [A-Z]
в регулярных выражениях и глобусах оболочки. (То есть, если вы можете игнорировать остальные буквы.)