我有一个目录,其中包含数百个子目录。结构如下:
directory ---> subdirectory_1 ---> file1
| |---> file2
---> subdirectory_2 ---> file1
|---> file2
|
|
---> subdirectory_n --> more_files
现在我想执行一个以连续方式在子目录上执行的 shell 命令。就像首先在 sd1、sd2、sd3 上一样,并给出输出。然后在 sd2、sd3、sd4 上,反之亦然。
现在我可以执行以下操作来对所有子目录执行命令:
'find some_string -maxdepth 1 -type d \( ! -name . \) -exec bash -c "cd \'{}\' && do something" \;'
但我似乎找不到一种方法以恒定的间隔连续执行它们。有什么建议么?
答案1
您可以创建一个像这样的循环:
while true
do
<your command>
sleep <some time to sleep between executions>
done
但是你必须设置某种方式来退出循环,否则这个脚本的多个实例可能会使机器过载