-2
我希望到grep我的脚本输出的输出 - 它本身包含调用不同的二进制文件...shell脚本登录控制台
由于脚本有多个二进制文件内我不能简单地把exec和转储文件中的输出(它不会复制二进制文件的输出)...
为了让您知道,我正在监视脚本输出以确定系统是否卡住!
我希望到grep我的脚本输出的输出 - 它本身包含调用不同的二进制文件...shell脚本登录控制台
由于脚本有多个二进制文件内我不能简单地把exec和转储文件中的输出(它不会复制二进制文件的输出)...
为了让您知道,我正在监视脚本输出以确定系统是否卡住!
你为什么不追加?
mybin1 | grep '...' >> mylog.txt
mybin2 | grep '...' >> mylog.txt
mybin3 | grep '...' >> mylog.txt
这不行吗?
#!/bin/bash
exec 11>&1 12>&2 > >(exec tee /var/log/somewhere) 2>&1 ## Or add -a option to tee to append.
# call your binaries here
exec >&- 2>&- >&11 2>&12 11>&- 12>&-
脚本调用的二进制文件会将其输出写入脚本所在的同一个流。如果通过grep过滤脚本的输出,辅助程序的输出也将被过滤。那么问题是什么? –