export LC_ALL=POSIX
cat http.log |sort -t' ' -f -i -k 4.9,4.12n -k 4.5,4.7M -k 4.2,4.3n -k 4.14
# LC_ALL未声明可能会在排序月份再排日时显示错误顺序
# 按照空格' '分段, 忽略大小写, 在关键字中只考虑[/040-/0176]字符,
# 第四个分段的第9~12个字符按数字排序,
# 第四个分段的第5~7个字符按月份排序,
# 第四个分段的第2~3个字符按数字排序
# 第四个分段的第14个字符到末尾默认排序
本文介绍了一段用于处理日志文件的shell脚本,该脚本使用了复杂的sort命令来按照特定字段进行多级排序。它首先声明了LC_ALL环境变量以避免排序时出现字符集问题,然后通过管道操作对http.log文件的内容进行处理。具体排序规则包括:根据第四个字段内的不同位置按数字、月份等进行排序。

被折叠的 条评论
为什么被折叠?



