aag*_*gha 18 apache sorting date
我有几个已经附加在一起的Apache日志文件,我需要按日期对它们进行排序.它们采用以下格式:
"www.company.com" 192.168.1.1 [01/Jan/2011:00:04:17 +0000] "GET /foobar/servlet/partner/search/results?catID=1158395&country=10190&id=5848716&order_by=N-T&order_by_dir=-&product=10361996&siteID=1169823&state= HTTP/1.1" 200 10459 0 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"
Run Code Online (Sandbox Code Playgroud)
在Linux命令行上执行此操作的最佳方法是什么?
grm*_*grm 33
#!/bin/sh
if [ ! -f $1 ]; then
echo "Usage: $0 "
exit
fi
echo "Sorting $1"
sort -t ' ' -k 4.9,4.12n -k 4.5,4.7M -k 4.2,4.3n -k 4.14,4.15n -k 4.17,4.18n -k 4.20,4.21n $1 > $2
Run Code Online (Sandbox Code Playgroud)
小智 9
这几乎是太微不足道指出,但只是在情况下,它混淆了人:GRM的答案应该在技术上采用现场#3,没有4,以匹配提问的确切日志格式.也就是说,它应该是:
sort -t ' ' -k 3.9,3.12n -k 3.5,3.7M ...
Run Code Online (Sandbox Code Playgroud)
他的答案在其他方面都是正确的,并且可以按原样用于通用日志格式.
| 归档时间: |
|
| 查看次数: |
7807 次 |
| 最近记录: |