Этот вопрос StackOverflow упоминает команду unix под названием «повтор». Похоже, он делает именно то, что я хочу. Прочитав вопросы и ответы, я думаю, что у пользователя Mac OSX.
Однако эта команда не установлена по умолчанию в Ubuntu, и я не могу найти пакет для установки, чтобы получить его. Что мне установить?
Я не могу найти эту команду в Ubuntu. Кажется, его не существует. Мне даже кажется очень странным, что в сообщении на StackOverflow говорится, что это встроенный команда, когда я не могу найти ее в Ubuntu.
Редактировать: Как заметил Мэтт, это встроенная команда csh. Ниже приведены советы, как сделать то же самое с bash.
Если вы хотите повторить команду n раз, вы можете сделать это с помощью цикла:
for i in {1..n}; do yourcommand; done
Например, чтобы 100 раз напечатать «Это работает», используйте:
for i in {1..100}; do echo "It works"; done
Если вы хотите иметь repeat
функцию, вы можете добавить что-то подобное в свой ~/.bashrc
:
function repeat() {
local times="$1";
shift;
local cmd="$@";
for ((i = 1; i <= $times; i++ )); do
eval "$cmd";
done
}
Источник ваш ~/.bashrc
снова с . ~/.bashrc
и вы можете назвать это:
$ repeat 2 date
Mon Dec 21 14:25:50 CET 2009
Mon Dec 21 14:25:50 CET 2009
$ repeat 3 echo "my name is $USER"
my name is raphink
my name is raphink
my name is raphink
Вы можете использовать watch, стандартную команду, доступную в любой оболочке. Например:
watch -n 5 date
Судя по подсказке, это встроенный csh.
И, прочитав "man csh", похоже, что это так
repeat count command
The specified command, which is subject to the same restric-
tions as the command in the one line if statement above, is
executed count times. I/O redirections occur exactly once,
even if count is 0.
Итак, чтобы использовать его, либо введите «csh» и введите его из командной строки, либо напишите свой сценарий так, чтобы он использовал #! / Bin / csh в качестве интерпретатора вверху. Вот некоторые основы csh чтобы вы начали.