请帮我。我有一个日志文件,例如:test_2014_03_13.log
我需要使用 grep 对其进行尾部处理,并且在创建新文件(test_2014_03_14.log)时,我需要将使用 grep 的尾部处理切换到一个新文件而不跳过行。
我需要有关在不跳过数据的情况下进行切换的信息。
对不起,我的英语不好。
据我了解你。我认为您想在创建新日志文件时更改日志文件。
您需要运行两个不同的进程。
这是 Bash 中的一个示例,您可以轻松地用 Python 编写它。我读得太晚了,您要的是 Python 中的示例。
#!/bin/bash
pidTail=0
inotifywait -m /var/log/yourfiles -e created |
while read path action file; do
echo “changed to $file”
if [ ! $pidTail -eq 0 ]; then
kill $pidTail
fi
tail -f $file | grep something >> newfile.log &
pidTail=$!
done
注意:我已经在这里写了,我还没有测试过,它可能包含错别字;)
迟到总比没有好!
资料来源: