Форум — Development Как сделать, чтобы команда повторялась n-ное число раз 0 0 Что посоветуете ? Нужно приблизительно следующее: программа_которой_это делается <количество повторов> повторяемая команда Ссылка
for ((i = 0; i < _количество повторов_; i++ )); do программа_которой_это_делается; done; UVV ★★★★★ (12.01.09 08:10:56 MSK) Ссылка
$ yes "command arg1 arg2" | head -n $КОЛИЧЕСТВО_ПОВТОРОВ | sh sdio ★★★★★ (12.01.09 09:08:32 MSK) Показать ответы Ссылка
Ответ на: комментарий от sdio 12.01.09 09:08:32 MSK а разве не sh -s в конце? dilmah ★★★★★ (12.01.09 10:17:51 MSK) Показать ответ Ссылка
Ответ на: комментарий от dilmah 12.01.09 10:17:51 MSK одно и тоже sdio ★★★★★ (12.01.09 10:33:21 MSK) Ссылка
Ответ на: комментарий от sdio 12.01.09 09:08:32 MSK >$ yes "command arg1 arg2" | head -n $КОЛИЧЕСТВО_ПОВТОРОВ | sh Интересно, это можно считать хорошим стилем? Davidov ★★★★ (12.01.09 16:10:31 MSK) Показать ответ Ссылка
Ответ на: комментарий от Davidov 12.01.09 16:10:31 MSK это ж чистая функциональщина, да еще и с ленивыми вычислениями:) Но правда yes отсутсвует в стандарте.. dilmah ★★★★★ (12.01.09 16:19:59 MSK) Показать ответ Ссылка
Ответ на: комментарий от dilmah 12.01.09 16:19:59 MSK >Но правда yes отсутсвует в стандарте. yes "command arg1 arg2" | head -n $КОЛИЧЕСТВО_ПОВТОРОВ можно заменить на $ perl -e 'print "command arg1 arg2 \n" x 10' sdio ★★★★★ (12.01.09 17:01:16 MSK) Показать ответ Ссылка
Ответ на: комментарий от sdio 12.01.09 17:01:16 MSK find / | awk '{ print "command arg1 arg2" } NR == 10 { exit }' | sh -s dilmah ★★★★★ (12.01.09 17:31:44 MSK) Показать ответ Ссылка
Ответ на: комментарий от dilmah 12.01.09 17:31:44 MSK смысл понятен, но кол-во файлов может подкачать, а если нужно пару-тройку миллионов раз исполнить? sdio ★★★★★ (12.01.09 17:35:45 MSK) Показать ответ Ссылка
Ответ на: комментарий от sdio 12.01.09 17:35:45 MSK да, вообще это очень зря что в стандарте нет чего-нибудь типа yes, seq или jot. dilmah ★★★★★ (12.01.09 17:40:57 MSK) Ссылка
ну раз уж пошёл в ход perl и awk, то вот и tcl: [~]$ echo 'puts [ time {exec ps} 100 ]' | tclsh 9139.45 microseconds per iteration MKuznetsov ★★★★★ (13.01.09 12:14:06 MSK) Ссылка
Я так понял, спорт тут в краткости решения, а постановка задачи не совсем чёткая. Предлагаю такие варианты: for i in `seq 10`; do echo hello; done seq 10 |xargs -n1 echo hello alexsaa ★ (14.01.09 02:25:12 MSK) Ссылка