可以使用timeout命令设置超时时间,当脚本运行时间超过设定值时便被强制终止。
timeout命令的使用示例:
timeout 10s ./script.sh
以上命令表示将脚本script.sh的执行时间限制为10秒。
也可以通过使用trapped命令在接收到中断信号时退出脚本:
#!/bin/bash trap "exit" INT TERM ERR trap "kill 0" EXIT
以上代码中,第一行设置了在接收到中断、终止、错误等信号时退出脚本。第二行设置在脚本结束时杀死所有子进程。这样做可以避免脚本崩溃后留下僵尸进程的问题。