我在我的主目录中,并提供了一个指向我想要跟踪的两个不同文件的路径。我为 2 个变量搜索的每个文件。我的问题是这个脚本出于某种原因没有写入 saveFile.txt。 saveFile.txt 与我正在运行的脚本位于同一目录中。
#!/bin/sh
tail -f <path1> -f <path2> | egrep -i --line-buffered '<variable1>|<variable2>' > saveFile.txt
还有一个额外的好处,有没有办法为通过同一脚本扔进文件的输出添加间距?有人告诉我,用 Ruby 或 Python 编写可能更容易哈哈。
谢谢!
最佳答案
这是一个工作示例:
tail -f ./listener/alert/log.xml ./listener/trace/listener.log | grep -P --line-buffered '[A-z]+' | tee ~/foo.txt
注意:tail 不需要多个 -f 参数。我在带有 -P 标志的 grep 中使用 perl 正则表达式。最后,我喜欢在控制台上查看输出并将其发送到文件,因此我使用了 tee
。
关于linux - grep 不写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42279842/