TIL: timeout in Bash scripts
a year ago
- #Bash
- #Scripting
- #DevOps
- Bash脚本可以使用`timeout`工具来限制命令的执行时间。
- Bash中的`until`循环会检查条件(例如服务器健康状态),但如果条件始终不满足,可能会无限循环。
- `timeout`会在命令超过指定时间限制时发送信号(默认为`SIGTERM`)以终止命令。
- `timeout`不能直接与Shell内置命令(如`until`)一起使用,因为它们不是可终止的进程。
- 一种解决方法是把`until`循环包装在一个单独的Bash进程或脚本中,从而让`timeout`能够有效管理它。