当前位置:首页 > linux > 正文

linux查看日志文件常用命令

  • linux
  • 2024-05-03 06:45:52
  • 8273

tail
语法:tail [选项] [文件]
选项:
- -f:持续跟踪日志文件的末尾,有新日志时输出
- -n <行号>:显示最后指定的行数
示例:tail -f /var/log/messages(持续跟踪系统日志)
head
语法:head [选项] [文件]
选项:
- -n <行号>:显示文件的前指定行数
示例:head -10 /var/log/auth.log(显示认证日志的前 10 行)
less
语法:less [选项] [文件]
选项:
- /pattern:搜索指定模式
- n:向下滚动 n 行
- b:向上滚动 n 行
示例:less -S /var/log/kern.log(搜索关键字并高亮显示)
cat
语法:cat [选项] [文件]
选项:
- -n:输出行号
- -e:在行尾添加 $ 符号
示例:cat -n /var/log/systemd/journal.log(显示日志文件并添加行号)
grep
语法:grep [选项] <模式> [文件]
选项:
- -i:忽略大小写
- -v:反转匹配,仅显示不匹配的行
- -c:仅统计匹配行的数量
示例:grep -i "error" /var/log/messages(查找包含 "error" 的所有行)
awk
语法:awk [选项] '脚本' [文件]
脚本示例:
- {print $1}:输出第一列
- {print $1,$2}:输出第一和第二列
- {$1="new "$1}:修改第一列的值为 "new"
示例:awk '{print $1,$2}' /var/log/auth.log(仅显示用户名和认证时间)
journalctl
语法:journalctl [选项] [命令]
选项:
- -u <单元>:过滤特定单元的日志
- -e:显示文件结尾
- -f:持续跟踪日志文件
示例:journalctl -u sshd -f(跟踪 SSH 服务的日志)