Post

Linux常用命令详解

对于正常开发来说, linux常用的命令如下:

进程列表:top

top 是使用频率很高的命令,可以查看进行列表, cpu使用情况, io使用情况等。

1
2
3
4
5
6
7
8
9
10
[rsrlogin@xuid17 ~]$ top
top - 17:25:07 up 1325 days,  1:31,  2 users,  load average: 0.16, 0.11, 0.17
Tasks: 192 total,   1 running, 191 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.3 us,  0.6 sy,  0.0 ni, 98.0 id,  0.2 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 32246744 total,  4131328 free, 26178000 used,  1937416 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  5534988 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                
  693 rsrlogin  20   0 4131688 542040    308 S   0.7  1.7 265:51.03 java                                                              
 1096 rsrlogin  20   0 4243900 399384      0 S   0.7  1.2 622:05.43 java 

这里主要是注意以下一些指标:

  • load average - 系统负载占比, 分别为1/5/15分钟, 一个CPU为1。也就是最高负载不要大于CPU个数
  • us - 用户使用CPU使用率
  • sy - 系统内核CPU使用时间占比
  • ni - 用户进程改变过优先级的使用CPU占比
  • id - 系统CPU空闲时间占比,越低说明系统越空闲
  • wa - CPU等待IO操作时间占比, 越高说明当前IO磁盘读写越频繁,一般1以下

一些快捷键 :

  • P - 按照进程CPU排序
  • 1(数字1) - 显示每个内核CPU使用情况, 也可看内核数
  • top -H -p - 查看某个进程线程CPU使用情况
内存使用情况: free -m

这个没有什么解释的, -m 参数是以mb单位显示结果。 值得一提的是,linux 内存总数 = free + shared + buff/cache + available

磁盘及文件情况: df -h

查看磁盘使用情况, 这个没什么说的。

查看文件使用情况, 常见用于分析磁盘空间暂用过多的原因: 1、在根目录下使用,du -sh ./* 2、在根目录下使用,find / -type -f -size +10G

cpu信息: cat /proc/cpuinfo

查看linux cpu信息 物理CPU个数=physical id个数; 逻辑CPU个数=processor个数=物理CPU个数cpu coressiblings; CPU核数=物理CPU个数*cpu cores

进程详情: ` ll /proc//`

常用于查询一个进程的启动路径, 比如查看进程pid=18865的启动路径,ll /proc/18865/cwd

后台任务启动: nohup &

常用于启动一个后台任务,命令格式如下:

1
2
3
4
5
6
#将正常日志输出到test.log, 错误日志输出到test.err
# 1> 和 > 和 >> 是一个意思
nohup <cmd> 1>test.log 2>test.err &

#将正常和错误都输出到test.log
nohup <cmd> >test.log 2>&1 &

其中2>&1含义为将错误输出到标准输出当中

指定路径下按关键字查找文件

通常用于日志查询: find . -wholename "*borrow*/mylog*" | xargs grep 关键字

This post is licensed under CC BY 4.0 by the author.