我的这个脚本正在慢慢变大。它的输出在调用时被传送到一个文件(稍后用于构建电子邮件主体),但是,我在该脚本中调用了一个特定的命令,该命令的输出要修剪。Bash脚本。在输出到文件的脚本中隐藏一个特定命令的输出
我试图做
./somecommand | egrep "pattern1|pattern2"
其中在常规控制台窗口,但工作正常时,偷偷溜进我的更大的脚本,该管的egrep被忽略,“./somecommand”的全输出登录到父脚本的输出中。
如何解决?
我保持这个问题模糊,以避免复制粘贴整个该死的东西。更多信息可以根据要求提供。是的,脚本中的脚本中的脚本,我们需要更深入,等等。我最多可以使用五个脚本来处理不同的任务,作为更大型的多服务器备份操作的一部分。主操作脚本被输出到电子邮件正文周围的文本文件中,作为最终用户看到的日志记录。我在主脚本中调用的一个特定脚本非常“嘈杂”,因此egrep只抓取与用户相关的输出。
谢谢大家!
你可以在壳调试,'设置-vx'转,和编辑您的问题只显示其中的代码被执行,与输出的一点点的地方。你的egrep模式中是否有'*'字符?你的脚本是否在内部使用'exec ... 2>&1'捕获/重定向?祝你好运。 – shellter