for f in *.sh; do
bash "$f" || break # execute successfully or break
# Or more explicitly: if this execution fails, then stop the `for`:
# if ! bash "$f"; then break; fi
done
并保留失败脚本的退出代码:
#!/bin/bash
set -e # exit on error
for f in *.sh; do
bash "$f"
done
3条答案
按热度按时间nzkunb0c1#
使用这个:
如果您想在脚本失败时停止整个执行:
并保留失败脚本的退出代码:
5uzkadbs2#
有一个更简单的方法,你可以使用
run-parts
命令来执行文件夹中的所有脚本:0mkxixxg3#
我遇到了这个问题,我不能使用循环和运行部分与cron一起工作。
回答:
你使用GNU并行,这会执行目录中的所有内容,并以更快的速度增加buff。更不用说它不仅仅是脚本执行,你可以在函数中放入任何命令,它都会工作。