繁体   English   中英

超时命令-Shell脚本的回显输出

[英]Timeout command - echo output from shell script

我想在导入脚本上设置超时。

使用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

source解决了我的问题。

我首先使用它是错误的,因为它必须与sudo结合使用,例如sudo -s

像这样更改我的脚本: timeout --kill-after=90s 60s sudo -s ./doImport.sh $DBNAME是答案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM