我有一个带有如下代码的 bash 脚本:
echo "EXECUTING TASK 1"
sort -r scripts/sh/test-list | while read fn; do
sh -vx scripts/sh/test-web-task.sh "$fn"
done
echo "EXECUTING TASK 2"
sort -r scripts/sh/test-unit-list | while read fn; do
sh -vx scripts/sh/test-unit-task.sh "$fn"
done
在 test-web-task 和 test-unit-task 我有一些调用 grails 来运行一些测试然后做一些打包的东西。像这样的东西:
grails test-app $1
mv results backup/$1
在文件 scripts/sh/test-unit-list 和 scripts/sh/test-list 我有一个要运行的测试列表。像这样的东西:
Person
Book
第一个循环在没有运行文件 scripts/sh/test-list 的所有行的情况下中断,然后它开始运行第二个循环。
如您所见,我已将 -vx 添加到 sh 以查看可能是什么问题。但我找不到我做错了什么。
我认为可能 scripts/sh/test-list 中的某些内容正在崩溃,并打破了循环。如果是这种情况,我想知道发生了什么崩溃,并且我希望循环继续运行而不会中断。
你能给我任何指点吗?