考虑以下bash片段,我试图在ghostscript
的帮助下压缩我的文件
gs_res=$(gs -sDEVICE=pdfwrite -sOutputFile="$gsoutputfile" -dNOPAUSE -dBATCH "$2" 2>&1 1>/dev/null)
ec=$?
gs_error_pattern="Error:"
每当ghost脚本进程发生错误时,进程都不会被终止,shell脚本中的其余部分也不会被执行。
如果我可以在计时器任务中包含单个命令行,如下面的
,那会更好不确定,
timer_task() {
gs_res=$(gs -sDEVICE=pdfwrite -sOutputFile="$gsoutputfile" -dNOPAUSE -dBATCH "$2" 2>&1 1>/dev/null)
}
当时间限制超过时杀死时间任务。如果有人可以帮助我以更好的方式解决这个问题,那将是一个很大的缓解。
答案 0 :(得分:0)
尝试使用
set -e
要么
set -o pipefail
在脚本的开头。