我有两个脚本,script1有一个while循环,脚本2在这个while循环中调用。脚本2中的case语句带有一个退出的整个程序选项。但是当退出0调用它时,它只退出脚本2而不是在脚本1中循环退出。有什么想法吗?脚本详情如下 script1.sh
while read -r line;
do
bash script2.sh
done<list.txt
script2.sh
read input </dev/tty
case "input" in
e)
exit 0
;;
*)
echo $input
;;
esac
要清楚我想要程序运行的是当我按下e时我希望整个程序停止不只是完成一个循环。 感谢您提前获得帮助
答案 0 :(得分:3)
脚本2与脚本1处于不同的过程,因此脚本2无法杀死脚本1.
2解决方案:
. script2
)答案 1 :(得分:0)
把:
set -e
在脚本的开头1.在脚本2中,替换&#39;退出0&#39;与&#39;退出1&#39;。