linux常用基本命令
查看linux操作系统发行版本
cat /etc/issue
查看内存大小
free -g
查看磁盘空间
df -h
查看某个目录下各个文件的大小
du -sh ./*
比如我在Downloads目录下,想查看此目录下各个文件/文件夹的大小,就可以使用此命令。
查看日志文件
less mylog.log
特别是查看生产日志,建议用less命令,另外less 查看日志时有一些快捷键,有必要掌握一下,比如:
1)定位文件最后一行,输入大写G,返回文件首页再输入小写g;
2)根据关键词定位,输入斜杆/,然后再输入你所要查找的文字,再按回车;这里我查找包含libs的内容
3)退出less,关闭文件,直接按q键
解压zip包查看日志
有时候我们要看的日志被压缩成gz包放到历史日志文件里,这个时候要查看日志,最好把gz日志文件加压
gunzip -c history.gz > my.log
解压history.gz内容到my.log,然后less my.log查看日志
根据关键词过滤日志
1) 过滤所有包含成功的日志到success.log
cat my.log | grep 成功 > success.log
2) 过滤所有非成功的日志到unsuccess.log
cat my.log | grep -v 成功 > unsuccess.log
另外grep 过滤可以连续使用,比如
cat my.log | grep 成功 | grep 张三 > zhangsanSuccess.log
java应用相关命令
查看所有java应用程序进程
jps
查看java进程的垃圾回收(gc)情况
jstat -gcutil 2896 5000
命令说明:查看2896进程的垃圾回收情况,每5s 刷新一次;
有时候我们的java应用会在负载高的情况下,表现出性能问题,比如服务卡顿,这个时候我们可以用此命令查看java进程的垃圾回收情况,young GC 和 Full GC 的耗时,必要时,可以扩展堆内存的大小;
从上面可以看出youngGC 4660次,耗时31.707s;Full GC 42次,耗时12.414秒;如果频繁Full GC,比如每秒Full GC 一次,那么可以加大老年代的内存占比,或者整体扩展堆内存;
查看java进程的堆内存使用情况
jmap -heap 2896
查看2896进程的堆内存分配及使用情况
查查java进程的堆栈信息
jstack 2896 > jstack.log
导出2896进程此时间点的堆栈信息到jstack.log文件
然后再查看jstack.log,分析堆栈信息。
---------------------------------------------------------------------------------------------
好了,今天先到这吧,天真热,吃块西瓜,明天继续总结!