Bash - 等待超时

时间:2014-08-11 12:36:23

标签: linux bash timeout sleep wait

我遇到了bash编程问题。我有这段代码:

#!/bin/bash
tmpfile="temp.txt"
./child.sh &
sleep 4s

但我想获得child.sh的退出代码。我知道可以使用costructor wait。有没有等待+超时的构造函数?

由于

2 个答案:

答案 0 :(得分:4)

您可以使用等待分叉的孩子完成

#!/bin/bash
tmpfile="temp.txt"
./child.sh &
# next line wait for just previously forked process
wait $!
# next line exit with the status of previously returned command
exit $?

我想你想要孩子超时, 您需要的选项取决于您拥有的超时版本:

#!/bin/bash
tmpfile="temp.txt"
timeout 4 ./child.sh &
wait $!
exit $?

答案 1 :(得分:0)

cat file | xargs ./prova.sh; echo $?

这个命令返回xargs.can的退出代码我得到prova.sh退出代码?