工作常用之服务器日志 服务器常用命令

服务器常用命令

日志相关

  1. 查询指定文件
1
cat -n xiaoke_application.log
  1. 查询指定文件包含某个关键词
1
cat -n xiaoke_application.log |grep "1304537010200576"
  1. 查询指定行开始后的日志
1
cat -n logs/caq_application.log |tail -n +4542|head -n 20
  1. 查询指定关键词最后的10行
1
cat -n logs/wx-push.log |grep "完成,推送给{李福财}"|tail -n 60
  1. 查询指定关键词的前10行
1
cat -n logs/wx-push.log |grep "完成,推送给{李福财}"|head -n 60
  1. 查询日志是排除某个词
1
cat -n logs/wx-push.log |grep '开启消息推送任务,开始时间'|grep -v '商务室'|tail -n 20 
  1. 查询多个关键词一起显示
1
cat -n logs/caq_application.log|grep '26437299546161152'|grep 'getDYxx'|tail -n 20
  1. 统计某个关键词出现的次数
1
cat logs/xiaoke_application.log.2021-03-10  | grep -o "保存成功" | wc -l
  1. tail和head使用
1
2
3
4
tail -n  10 test.log  #查询日志尾部最后10行的日志;
tail -n +10 test.log #查询10行之后的所有日志;
head -n 10 test.log #查询日志文件中的头10行日志;
head -n -10 test.log #查询日志文件除了最后10行的其他所有日志;
  1. more和less使用
1
2
cat -n /root/.pm2/logs/server-out.log |grep "populate" |more 	#使用more时,用空格翻页,会在终端显示日志
cat -n /root/.pm2/logs/server-out.log |grep "populate" |more #使用less时,用pg up/pg dn翻页,按q结束

清空日志

1
2
3
4
5
6
#将一个空字符串写入 /var/log/sys.log 文件中,相当于清空该文件的内容。echo 命令用于输出文本,> 用于将输出重定向到文件。
echo > /var/log/sys.log
#将空内容的 /dev/null 文件重定向到 messages 文件,实际上是清空 messages 文件的内容。/dev/null 是一个特殊的设备文件,写入它的内容会被丢弃。
cat /dev/null > messages
#输出消息 "Logs cleaned up.",表示日志已被清理。
echo "Logs cleaned up."

后台方式启动服务

1
2
#以下命令是在后台运行 RocketMQ 的 mqnamesrv 组件,并将输出重定向到 /dev/null,以便将所有输出丢弃。
nohup sh mqnamesrv -n 127.0.0.1:9876 -c rocket4.7.1/conf/broker.conf > /dev/null 2>&1 &