所以这里是我的问题:我有很大的日志文件,并希望有一个脚本特定的时期和安全他们用grep到一个文件(排序),基本上HOWTO的grep在与定义的开始和结束日期的月
bash script.sh Jul 4 Sep 30
将返回例如
Sep 30 user0 logged in
Sep 15 user1 logged in
Aug 6 user0 logged in
Aug 3 user1 logged in
Jul 28 user2 logged in
Jul 27 user2 logged in
Jul 4 user0 logged in
我第一次尝试是,每一个月份和日期得到他自己的变量一样
bash script.sh Jul 4 Sep 3 0
这样我就可以使用grep的$ 1开始月(7月),开始日期(4)$ 2等类似
for logs in logs*
do
grep -qEe "^\"$1\" [\"$2\"-9]\s" $messages >> result.txt
done
从7月4日获得的所有日志到9,但我不知道该怎么从整个时间段得到的日志不是在同一个月,也不是在像1-9或10-19等时期
任何帮助非常感谢!
编辑:
至于有些人问,这是我的日志文件看起来怎么样(只是更大和不排序):
Sep 30 user0 logged in
Jul 27 user2 logged in
Aug 6 user0 logged in
Aug 31 user1 logged in
Jul 8 user2 logged in
Sep 5 user1 logged in
Jul 27 user2 logged in
Jul 14 user0 logged in
[...]
举个例子,给我们几行日志文件。 – redneb
这是Gnu awk中的一个:http://stackoverflow.com/questions/39220666/how-to-get-all-the-logs-with-certain-string-value-in-the-last-a-few-minutes/39221519#39221519 –
日志文件看起来像第二个代码段,只是更多的行(未排序)与其他日期,如7月3日用户0登录或5月15日用户1登录 – Maxir