Существует ли стандартный инструмент UNIX для повторения команды какое-либо количество раз?

Это, вероятно, очень легко, но является там простым способом записать команду однажды в консоли и выполнить ее n времена, где n указан во времени выполнения? Что-то вроде этого:

repeat 100 echo hello

Такая команда существует (примите типичную установку Linux)?

Или я записал бы, чтобы сделать некоторый цикл в ударе?

12
задан 22.03.2010, 15:55

3 ответа

Да это возможно. Bash имеет очень обширный язык сценариев. В этом случае:

for i in {1..100}; do echo 'hello'; done

Больше примеров цикличного выполнения: http://www.cyberciti.biz/faq/bash-for-loop/
Полная ссылка удара: http://www.gnu.org/software/bash/manual/bashref.html

22
ответ дан 07.12.2019, 11:46

Или я записал бы, чтобы сделать некоторый цикл в ударе?

Да, Вы были бы, как это:

for(( i = 0; i < 100; i++ )); do echo "hello"; done

или, короче:

for((i=100;i--;)); do echo "hello"; done
3
ответ дан 07.12.2019, 11:46

В дополнение к более созданному в методах Вы могли использовать внешнюю утилиту, которая генерирует последовательность чисел.

# gnu coreutils provides seq
for i in $(seq 1 100) ; do printf "hello\n" ; done

# freebsd (and probably other bsd) provides jot
for i in $(jot - 1 100) ; do printf "hello\n" ; done
3
ответ дан 07.12.2019, 11:46

Теги

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