Шестнадцатеричное расширение Bash

Дурп, на новом сервере не установлен MDADM. После того, как я установил драйверы, pvscan увидел группу томов. Ух .. хотя это моя вина и тупица, я не фанат LVM + MDADM + External Enclosures!

Обновление:

Также после установки mdadm я использовал следующее (до pvscan, поэтому не могу быть уверенным!), Не уверен, что это тоже помогло, но пока я закончил тестирование!

sudo mdadm --assemble --scan
10
19.02.2017, 17:44
3 ответа

Вы можете; вам просто нужно разбить диапазон {0..F} на два отдельных диапазона {0 .. 9} и {A..F} :

$ printf '%s\n' {{0..9},{A..F}}{{0..9},{A..F}}
00
01
...
FE
EF
23
27.01.2020, 19:59

Использование printf:

$ printf '%.2x\n' {0..255}

Строка формата %.2x говорит, что нужно отформатировать вывод как заполненное нулями двузначное шестнадцатеричное число в нижнем регистре (%02x сделал бы то же самое).

Если вам нужен верхний регистр, используйте %.2X.

Bash понимает только диапазоны целых чисел по основанию 10 или диапазоны между символами ASCII в скобочных расширениях интервалов.

15
27.01.2020, 19:59

Это возможно, но некрасиво:

echo {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}{0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}

Насколько я могу судить, bash не имеет понятия о шестнадцатеричных диапазонах.

7
27.01.2020, 19:59

Теги

Похожие вопросы