n秒后如何退出命令?

Mar*_*cos 9 bash exit

我正在写一个脚本,想知道如何在几秒后让其中一个命令退出.例如.让我们假设我的脚本在其中运行2个应用程序命令.

#!/bin/bash

for i in `cat servers`
do
<command 1> $i >> Output_file  #Consistency command
<command 2> $i >> Output_file  #Communication check
done
Run Code Online (Sandbox Code Playgroud)

这些命令用于检查应用程序的一致性和通信.我想知道如何确保命令1和2仅运行几秒钟,如果没有来自特定主机的响应,请转到下一个命令.

谢谢

Chr*_*ris 14

bash coreutils有'timeout`命令.

来自手册:

描述

启动COMMAND,如果在NUMBER秒后仍然运行,则将其终止.SUFFIX可以是"s"秒(默认值),"m"表示分钟,"h"表示小时或"d"表示天.

例如:

timeout 5 sleep 6