2

В Bash у меня есть программа, которая перечисляет несколько вариантов файлов для загрузки, а затем предлагает пользователю выбрать некоторые из них. Я бы хотел, чтобы пользователь мог набирать что-то вроде 1-6,8,11-12 для загрузки файлов 1, 2, 3, 4, 5, 6, 8, 11 и 12. Как я могу сгенерировать последовательность чисел (для включения в цикл for ) из этого типа удобочитаемого ввода?

1 ответ1

3
echo 1-6,8,11-12 | tr -cd "0-9,\n-" | tr "," "\n" | while IFS=- read A B; do eval echo {$A..${B:-$A}}; done | tr "\n" " "

Выход:

1 2 3 4 5 6 8 11 12

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .