【发布时间】:2021-10-08 18:55:37
【问题描述】:
我正在运行类似 bash 的脚本
$(command -options)&
export SC_PID=$!
if tail -f <log_filename.txt> | grep --line-buffered -E "(some expression)"; then
kill -STOP $SC_PID
fi
但它在命令行输出中写入"(some expression)" 而不是终止进程。请注意,log_filename.txt 是一个日志文件,从$(command -options) 实时写入输出。我做错了什么?
【问题讨论】:
-
您可能需要
-q和grep -
此代码有许多其他问题。命令替换没有意义。让进程处于停止状态几乎肯定是不对的。要么完全杀死它,要么不理它。
export在这里是不必要的;它使变量可用于 subprocesses 但您这里没有要读取它的子进程。 -
疑似与stackoverflow.com/questions/69491809/…相似——这是作业吗?
-
@tripleee 不,至少我的一个