你知道这linux几个核心命令吗?
找工作的时候,熟悉linux操作系统是一项不可或缺的技能。熟记几个关键的linux命令,可以以不变应万变
top命令
Linux top命令用于实时显示进程的动态
命令参数
d : 改变显示的更新速度
n : 更新的次数,完成后将会退出 top
p : 指定查看的进程号
实例
#显示进程信息
top
#设置信息更新次数,表示更新两次后终止更新显示
top -n 2
设置信息更新时间, 表示更新周期为3秒
top -d 3
显示指定的进程信息,显示进程号为139的进程信息,CPU、内存占用率等
top -p 139
执行一次简单的top
命令后,linux的输出
PID | 进程的ID |
---|---|
USER | 进程所有者 |
PR | 进程的优先级别,越小越优先被执行 |
NI | 进程Nice值,代表这个进程的优先值 |
VIRT | 进程占用的虚拟内存 |
RES | 进程占用的物理内存 |
SHR | 进程使用的共享内存 |
S | 进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态 |
%CPU | 进程占用CPU的使用 |
%MEM | 进程使用的物理内存和总内存的百分 |
TIME+ | 该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值 |
COMMAND | 启动该进程的命令名称 |
PS命令
-a 显示所有进程
-e 显示所有进程
-f 显示UID,PPIP,C与STIME栏位。
-p <进程识别码> 指定进程识别码,并列出该进程的状况。
-t <终端机编号> 指定终端机编号,并列出属于该终端机的进程的状况。
-u <用户识别码> 显示该用户下所有进程
-u 不加参数的-u,以用户为主的格式来显示进程状况。
ps -ef以标准格式输出进程详细信息
UID | 用户ID |
---|---|
PID | 进程 |
PPID | 父进程ID |
C | CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高 |
STIME | 进程启动时间 |
TTY | 完整的终端名称 |
TIME | 占用CPU时间 |
CMD | 完整的启动进程所用的命令和参数 |
ps -aux 以BSD格式显示进程详细信息
表中未列出的参数,与上表意义相同。
%CPU | 进程占用CPU百分比 |
---|---|
%MEM | 进程占用内存 |
NI | 进程的NICE值,数值大,表示较少占用CPU时间 |
VSZ | 进程使用的虚拟内存量(KB) |
RSS | 进程占用的固定内存量(KB)(驻留中页的数量) |
STAT | 进程状态 |
START | 进程开始时间 |
netstat命令
netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。
命令参数
-a或–all 显示所有连线中的Socket。。
-l或–listening 显示监控中的服务器的Socket。
-n或–numeric 直接使用IP地址,而不通过域名服务器。
-t或–tcp 显示TCP传输协议的连线状况。
-u或–udp 显示UDP传输协议的连线状况。
-p或–programs 显示正在使用Socket的程序识别码和程序名称。
实例一:无参数使用
netstat输出结果可以分为两部分
-
Active Internet connections, 有源TCP连接, Recv-Q和Send-Q一般为零,如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。
Proto Recv-Q Send-Q 连接协议 接收队列 发送队列 -
Active UNIX domain socket,有源Unix域套接口
Proto RefCnt Types State path 连接协议 连接到本套接口上的进程号 套接口 套接口当前状态 连接到套接口进程使用的路径
实例二:列出所有端口
显示一个所有的有效连接信息列表,包括已建立连接、监听连接
命令:netstat -a
实例三: 显示当前UDP连接情况
命令:netstat -nu
实例四: 显示UDP端口号使用情况
命令:netstat -apu