温馨提示×

centos nohup日志怎么检索

小樊
41
2026-09-12 02:28:18
栏目: 智能运维

在 CentOS 上使用 nohup 运行程序时,通常会把输出重定向到日志文件(如 nohup.out 或自定义日志)。下面是常用的日志检索方法,从基础到进阶。


一、确认 nohup 日志文件位置

1. 默认日志

nohup command &

默认会生成:

nohup.out

在当前目录。

2. 自定义日志(推荐)

nohup command > app.log 2>&1 &

日志就在:

app.log

查看进程对应的日志文件:

ps -ef | grep command
lsof -p PID

二、基础日志查看命令

1. 查看全部日志

cat app.log

2. 分页查看

less app.log
  • ↑ ↓ 翻页
  • /关键字 搜索
  • q 退出

3. 查看尾部日志(最常用)

tail -f app.log

实时查看最新日志(类似 tail -f nohup.out

只看最后 100 行:

tail -n 100 app.log

三、日志内容检索(核心)

1. 按关键字检索

grep "ERROR" app.log

忽略大小写:

grep -i "error" app.log

显示行号:

grep -n "ERROR" app.log

2. 实时检索日志

tail -f app.log | grep "ERROR"

3. 统计出现次数

grep -c "ERROR" app.log

4. 多关键字检索

grep -E "ERROR|WARN" app.log

5. 查看上下文(非常重要)

grep -A 10 "ERROR" app.log   # 后10行
grep -B 10 "ERROR" app.log   # 前10行
grep -C 10 "ERROR" app.log   # 前后各10行

四、按时间检索(nohup 日志常见)

1. 查看某时间之后的日志

sed -n '/2026-01-21 10:00/,/2026-01-21 12:00/p' app.log

2. 配合 awk

awk '$0 >= "2026-01-21 10:00"' app.log

五、大日志文件优化检索

1. 压缩旧日志后检索

zgrep "ERROR" app.log.gz

2. 使用 less + grep

less app.log
/ERROR

六、实战示例

实时查看错误日志

tail -f nohup.out | grep -i error

查找最近 500 行中的异常

tail -n 500 app.log | grep -C 5 "Exception"

统计今天错误数量

grep "2026-01-21" app.log | grep -c "ERROR"

如果你愿意,可以告诉我:

  • ✅ 日志格式(是否有时间)
  • ✅ 使用的是 nohup.out 还是自定义日志
  • ✅ 想查“错误 / 接口 / 用户 / 时间段”

我可以帮你写更精准的检索命令

0