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

У меня есть каталог, содержащий сотни подкаталогов. Структура выглядит так:

directory ---> subdirectory_1 ---> file1
          |                  |---> file2
          ---> subdirectory_2 ---> file1
                             |---> file2
          |
          |
          ---> subdirectory_n --> more_files

Теперь я хочу выполнить команду оболочки, которая выполняется в подкаталогах непрерывно. Вроде сначала на sd1, sd2, sd3 и дает вывод. Потом на sd2, sd3, sd4 и наоборот.

Теперь я могу сделать следующее, чтобы выполнить команду во всех подкаталогах:

'find some_string -maxdepth 1 -type d \( ! -name . \) -exec bash -c "cd \'{}\' && do something" \;'

Но я не могу найти способ выполнять их непрерывно с постоянным интервалом. Есть предложения?

0
23.08.2017, 10:11
1 ответ

Вы можете создать такой цикл:

while true
do
<your command>
sleep <some time to sleep between executions>
done

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

1
28.01.2020, 02:45

Теги

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