linux常用命令

作为一名软件工程师,必须要熟知常用的linux命令。

1. 查看cpu信息

less /proc/cpuinfo

查看cpu的核数

less /proc/cpuinfo |grep 'model name' -c



2. 查看内存

free –m


-m :表示单位是MB

其它方式

less  /proc/meminfo

3.  帮助命令man 。命令的详细使用说明

man top

4. vmstat

Virtual Memory Statistics,统计进程、内存、io、cpu等的活动信息

对于多CPU系统,vmstat打印的是所有CPU的平均输出

vmstat 2
每2秒输出一次



字段解释:

Procs(进程):

r: 运行队列中进程数量

b: 等待IO的进程数量

Memory(内存):

swpd: 使用虚拟内存大小

free: 可用内存大小

buff: 用作缓冲的内存大小

cache: 用作缓存的内存大小

Swap

si: 每秒从交换区写到内存的大小

so: 每秒写入交换区的内存大小

IO:(现在的Linux版本块的大小为1024bytes

bi: 每秒读取的块数

bo: 每秒写入的块数

系统:

in: 每秒中断数,包括时钟中断。

cs: 每秒上下文切换数。

CPU(以百分比表示):

us: 用户进程执行时间(user time)

sy: 系统进程执行时间(system time)

id: 空闲时间(包括IO等待时间)

wa: 等待IO时间


5.  iostat

iostatI/O statistics(输入/输出统计)的缩写,主要的功能是对系统的磁盘I/O操作进行监视。它的输出主要显示磁盘读写操作的统计信息,同时也会给出CPU使用情况。同vmstat一样,iostat也不能对某个进程进行深入分析,仅对系统的整体情况进行分析。



6. top命令


第一行:当前时间:系统已运行时间:751天,目前4个用户,1、5、15分钟内的load分别是0.07、0.02 、0.00

第二行:进程情况:总共148个,正在运行的有2个,休眠有139个,僵尸进程1个

第三行:cpu的使用情况(按数字1显示所有cpu)

第四行:内存情况

5行:虚拟内存情况

然后:进程id,虚拟内存,驻留内存使用,cpu,内存使用百分比,运行时间,命令参数等。

VIRT表示进程可以使用的内存总大小, 包括这个进程真实使用的内存, 映射过的文件, 和别的进程共享的内存等。 RES表示这个进程真实占用内存的大小。 SHR表示可以和别的进程共享的内存和库大小.


ps:

h: 显示帮助
c:显示详细的命令参数
M:按照占用内存大小(%MEM 列)对进程排序;
P:按照 CPU 使用率( %CPU 列)对进程排序;
u:显示指定用户的进程。默认显示所有进程;
T:根据累计运行时间排序

如果要查看具体某一个进程下的线程资源占用情况:

top -p 进程id -H

7. lsof

可以列出当前系统与文件的关系

lsof sys.log


查看sys.log文件被哪个进程打开


lsof  -i:端口号         查看端口被哪个进程占用


8. df


磁盘的使用情况


9. du


当前目录下的最叶子目录的大小


du -sch * 


当前目录下的各目录的大小


10. find

文件查找

find . -name sys.log
当前目录下查找sys.log文件


find . -size +20M 
查找当前目录下大小超过20M的文件


find . -size +20M   |xargs ls -lh



find -type f -printf '%s %p\n' |sort -nr | head

查找占用空间最大的10个文件



通配符的使用


11. 小技巧

Ctrl+a   回到命令的行首

Ctrl+e   回到命令的行尾

cat -n    结果按行号输出

[yang@vm-cbu-qa-172-43 ~]$ jps |cat -n
     1  31704 start.jar
     2  30771 Jps
     3  24964 MailSendMain

暂时先记录这么多


你可能感兴趣的:(linux常用命令)