我想在导入脚本上设置超时。
使用timeout
时,导入脚本不会通过loadImport.sh
输出。这很麻烦,因为loadImport.sh
是由php文件加载的脚本,因此没有看到输出。
第一个脚本loadImport.sh
加载导入脚本doImport.sh
并超时。
loadImport.sh
#!/bin/bash
IMPORTLOG='/usr/local/bin/import.log'
DBNAME=$1
timeout --kill-after=90s 60s sudo ./doImport.sh $DBNAME
if (($? == 124)); then
echo "Import timed out" | tee -a $IMPORTLOG
exit 124
fi
如何使用doImport.sh
行获取timeout --kill-after=90s 60s sudo ./doImport.sh $DBNAME
的输出?
答案 0 :(得分:0)
source
解决了我的问题。
我首先使用它是错误的,因为与sudo
结合使用它必须像sudo -s
一样使用
像这样更改我的脚本:
timeout --kill-after=90s 60s sudo -s ./doImport.sh $DBNAME
是答案