绞尽脑汁并抓取谷歌找到一种方法来获取sem带超时的命令选项,以便在超时时给我一个退出代码.它不需要通过sem,这只是一种痛苦,因为我需要根据是否最终采用不同的行动:
我从被调用的脚本得到了一个OK响应
从调用的脚本中我得到的东西都没问题
通话超时
在这种情况下,信号量用于限制对脚本的调用,我将文件列表传递给传出消息队列.正如您在下面的粗略测试示例中所看到的,我能够处理前两个场景,但我不能为我的生活得到任何输出,我可以使用从超时终止的进程(即outputtest.sh有sleep 6; echo testings))
sem --jobs 3 --timeout 3 -u \
'runproc=$(bash outputtest.sh q_xxxx); if [ "$runproc" == "00" ];
then echo "OK"; else mv ./q_xxxx ./err/err_xxxx; fi'
Run Code Online (Sandbox Code Playgroud)
任何提示?