linux命令(持续更新...)

free

free命令用来显示当前机器内存显示情况
用法:free [option]
常用参数:-h
结果示例:free -m
total used free shared buffers cached
Mem: 2016 1973 42 0 163 1497
-/+ buffers/cache: 312 1703
Swap: 4094 0 4094
第一行表示系统可见内存,总数都是2016M,用了1973M,这个used包括buffer(缓存未写入)和cache(读入数据缓存)的。
第二行表示应用可见内存,这行的free=第一行的free+buffer+cache。
第三行表示虚拟磁盘存储空间使用情况。

du

du命令用来显示目录占用磁盘空间情况。
用法: du [option] $dir
常用参数:-h以人类可读方式展示磁盘空间,--max-depth=1表示只统计一层目录占用磁盘空间。
Mac: du -h -d 1

df

df命令用来展示磁盘剩余空间,使用率

jstat

jstat -gc 垃圾回收统计
jstat -gccapacity 堆内存统计
jstat -gcnew

jstack

jstakc <pid> nid 十六进制的pid

jmap

jmap -heap 打印java堆内存设置以及新生代(eden,from,to),年老代和永久代的堆内存概况。

dmesg | tail

dmesg 输出系统日志。

vmstat <number>

每隔number秒输出系统指标
r: 等待cpu资源进程数
free: 空闲内存(kb)
si, so: swap区的写入和读取数目
us, sy, id, wa: 用户/系统/空闲/io等待时间

mpstat -P ALL 1

每个cpu占用情况

pidstat <pid>

某个进程占用cpu情况

sar

网络设备

top

显示当前cpu mem等情况,可以按照某个指标排序:-o cpu -o mem

netstat

-a或--all:显示所有连线中的Socket;
-A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;
-c或--continuous:持续列出网络状态;
-C或--cache:显示路由器配置的快取信息;
-e或--extend:显示网络其他相关信息;
-F或--fib:显示FIB;
-g或--groups:显示多重广播功能群组组员名单;
-h或--help:在线帮助;
-i或--interfaces:显示网络界面信息表单;
-l或--listening:显示监控中的服务器的Socket;
-M或--masquerade:显示伪装的网络连线;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;
-o或--timers:显示计时器;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-r或--route:显示Routing Table;
-s或--statistice:显示网络工作信息统计表;
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-v或--verbose:显示指令执行过程;
-V或--version:显示版本信息;
-w或--raw:显示RAW传输协议的连线状况;
-x或--unix:此参数的效果和指定"-A unix"参数相同;
--ip或--inet:此参数的效果和指定"-A inet"参数相同。

推荐阅读更多精彩内容