linux命令

[亡魂溺海] 提交于 2020-04-08 14:00:58

#ls命令

ls  -lSh  :以长格式输出并且,按照文件大小进行排序

#locate命令

locate:在linux系统里有一个名为locate.db的数据库文件,这个文件包含系统文件的文件名及对应路径信息。故而,locate命令查找文件时就不用遍历磁盘,而是直接查找mlocate.db文件,这样可以快速给出结果。

-c  :不显示匹配到的内容,只显示匹配到的行数
-i   :匹配时忽略大小写
-r   :支持基本正则表达式匹配
--regex  :支持扩展正则表达式匹配
-c  :不输出文件名,仅计算找到的文件数量
-l :仅输出几行

#updatedb更新mlocate数据库

updatedb  :updatedb命令可以创建或更新locate命令使用的数据库。
-U  :更新指定目录相关的数据库信息。默认是扫描整个系统。耗时较长。
-v  :显示命令执行过程

#diff命令

-y  :以并列的方式显示文件的异同之处
-c  :使用上下文的输出格式
-w  :在使用-y参数时,指定显示宽度
-u   :使用统一格式输出

#tee命令

tee  :把数据重定向到给定文件和屏幕上
-a  :向文件追加内容而不是覆盖

#grep命令

-v  :排除某些行
-n  :显示匹配行和行号
-i   :不区分大小写
-c  :只统计匹配的行数
--color  :为grep过滤的匹配字符添加颜色
-w  :只匹配过滤的单词
-o  :只输出匹配的内容
-A  n  :显示匹配到的字符串所在的行及其后n行,after
-B  n  :显示匹配到的字符串所在的行及其前n行,before
-C  n  :显示匹配到的字符串所在的行及其前后各n行,context
-l  :列出文件内容符合指定的范本样式的文件名称。

#ps命令

ps  :命令用于列出执行ps命令的那个时刻的进程快照
-a  :显示所有终端下执行的进程
-u  :显示指定用户相关的进程信息
-e  :显示所有进程
-f  :额外显示UID、PID、C与STIME栏位
-H  :显示进程树
-l  :以详细的格式来显示进程的状况
-o  :自定义输出指定的字段,以逗号分隔
ps  -ef 输出信息
UID  :进程被该UID所拥有
PID  : 进程的表示号
PPID  :进程的父进程的标识号
C  :CPU使用的资源百分比
STIME  : 进程开始的时间
TTY  :该进程是在哪个终端机上面运作,若与终端机无关,则显示“?”,另外,tty1-tty6是本机上面的登入者进程,若为pts/0等,则表示为由网络连接进主机的进程。
TIME  : 进程所使用的总的CPU时间。
CMD  :  正在执行的命令行。
ps aux 输出信息
UID  :进程被该UID所拥有
PID  : 进程的表示号
%CPU  :该进程使用掉的CPU资源百分比
%MEM  :该进程所占用的物理内存百分比
VSZ  :该进程使用掉的虚拟内存量(单位为Kbytes)
RSS  :该进程占用的固定的内存量(单位为Kbytes)
TTY  :该进程是在哪个终端机上面运作,若与终端机无关,则显示“?”,另外,tty1-tty6是本机上面的登入者进程,若为pts/0等,则表示为由网络连接进主机的进程。
STAT  :该进程目前的状态,主要的状态包括如下几种。
              R ,正在运行,或者是可以运行
              S,正在终端睡眠中,可以由某些信号(signal)唤醒
              D,不可中断睡眠
              T,正在侦测或者是停止了
              Z,已经终止,但是其父进程无法正常终止它,从而变成zombie(僵尸)                
              进程的状态
              +,前台进程
              l,多线程进程
              N,低优先级进程
              <,高优先级进程
              s,进程领导者
              L,已将页面锁定到内存中
              START,该进程被触发启动的时间
              TIME, 该进程实际使用CPU运作的时间
              COMMAND,该进程的实际命令

#pstree命令

pstree  :以树形结构显示进程和进程之间的关系

#nohup命令

nohup  :nohup命令可以将程序以忽略挂起信号的方式运行起来,被运行程序的输出信息将不会显示到终端,无论是否将nohup命令的输出重定向到终端,输出都将写入到当前目录的nohup.out文件中。如果当前目录的nohup.out文件不可用,则输出重定向到$HOME/nohup.out文件中
watch  :以周期性的方式执行给定的指令,指令输出以全屏方式显示。
watch -n 1 more /proc/net/dev 查看网卡流量信息。

#iftop命令

iftop  :可用于监控tcp/ip连接,必须于root用户的身份运行
-i  :指定监听的网络接口
-n  :  不进行DNS解析
-B  :以byte为单位显示流量
-P  :显示端口号
-F  :显示特定网段的进出流量
TX  :发送流量
RX  :接收流量
TOTAL  :总流量
Cum  :运行iftop到目前时间的总流量
peak  :流量峰值
rates  :分别表示过去2s、10s、40s的平均流量

#vmstat命令

显示虚拟内存

#mpstat命令

mpstat  :mpstat命令会输出CPU的一些统计信息,这些信息放在/proc/stat文件中
-P  :指定CPU编号

#iostat命令

iostat  :主要功能是对系统的磁盘I/O操作进行监视
-c  :显示CPU的使用情况
-d  :显示磁盘的使用情况
-k  :每秒以KB为单位显示数据
-m  :每秒以MB为单位显示数据
-n  :显示NFS的使用情况
-t  :显示每次统计的执行时间
-p  :指定要统计的磁盘设备名称,默认为所有的磁盘设备
-x  :显示扩展统计

#iotop命令

iotop  :是一款实时监控磁盘I/O的工具,但必须以root身份运行
-o  :显示正在使用I/O的进程或者线程,默认是显示所有
-p  :只显示指定PID的信息
-u  :只显示指定用户的信息
-P  :只显示进程,一般是显示所有线程
-k  :设置显示单位为kb

#sar命令

sar  :可以全面地获取系统的CPU、运行队列、磁盘I/O、分页(交换区)、内存、CPU中断和网络等性能数据
-u  :显示系统所有CPU在采样时间内的使用情况
-d  :显示系统所有硬盘设备在采样时间内的使用情况
-r  :显示在采样时间内系统内存的使用情况
-b  :显示在采样时间内缓冲区的使用情况
-n  :显示网络运行状态
-q  :显示运行队列的大小,它与系统当时的平均负载相同
例:sar   -u  2   3      #使用-u选项显示系统所有CPU在采样时间内的负载状态,后面接的2  3 表示每两秒统计一次,统计三次

sar   -n DEV 2   3      #使用-n显示网卡信息

#ethtool命令

ethtool  :查询或设置网卡参数

#lsof命令

lsof  :lsof全名为list  open  files ,也就是列举系统中已经被打开的文件。
-c  :显示指定的进程名所打开的文件
-p  :显示指定的进程号所打开的文件
-i  :通过监听指定的协议、端口和主机等信息,显示符合条件的进程信息
-u  :显示指定用户使用的文件
-U  :显示所有SOCKET文件
+d :显示目录下被进程开启的文件
+D :显示目录下被进程开启的文件但是会遍历目录

#uptime命令

uptime  :可以输出当前系统时间、系统开机到现在的运行时间、目前有多少用户在线和系统平均负载等信息

#free命令

free  :显示系统内存状态
-m  :以MB为单位显示内存的使用情况
-h  :以人类可读的形式显示内存的使用情况
-s  :根据指定的间隔秒数持续显示内存的使用情况

#tcpdump命令

tcpdump  :tcpdump命令是一个截获网络数据包的包分析工具

#pidstat命令

pidstat  :用于监控全部或指定进程的cpu、内存、线程、设备IO等系统资源的占用情况
-u:默认的参数,显示各个进程的cpu使用统计
-r:显示各个进程的内存使用统计
-d:显示各个进程的IO使用情况
-p:指定进程号
-w:显示每个进程的上下文切换情况
-t:显示选择任务的线程的统计信息外的额外信息
-T { TASK | CHILD | ALL }
这个选项指定了pidstat监控的。TASK表示报告独立的task,CHILD关键字表示报告进程下所有线程统计信息。ALL表示报告独立的task和task下面的所有线程。
注意:task和子线程的全局的统计信息和pidstat选项无关。这些统计信息不会对应到当前的统计间隔,这些统计信息只有在子线程kill或者完成的时候才会被收集。
-V:版本号
-h:在一行上显示了所有活动,这样其他程序可以容易解析。
-I:在SMP环境,表示任务的CPU使用率/内核数量
-l:显示命令名和所有参数

#screen命令

screen  :
-c file  :使用配置文件file,而不使用默认的$HOME/.screenrc
-d|-D [pid.tty.host]  :不开启新的screen会话,而是断开其他正在运行的screen会话
-h num  :指定历史回滚缓冲区大小为num行
-list|-ls  :列出现有screen会话,格式为pid.tty.host
-d -m  :启动一个开始就处于断开模式的会话
-r sessionowner/ [pid.tty.host]  :重新连接一个断开的会话。多用户模式下连接到其他用户screen会话需要指定sessionowner,需要setuid-root权限
-S sessionname  :创建screen会话时为会话指定一个名字
-v  :显示screen版本信息
-wipe [match]  :同-list,但删掉那些无法连接的会话

#nmap

nmap :
--traceroute :路由跟踪
-A   :全面扫描
-Pn  :

#cat

cat :
-A  :相当于-vET的整合选项,可列出一些特色字符而不是空白而已;
-b   :列出行号,仅对非空白行做行号显示,空白行不标行号;
-E  :将结尾的换行符$显示出来;
-n  :打印行号,连同空白行也会有行号;
-T  :将tab按键以^I显示出来;
-v  :列出一些看不出来的特殊字符

#lsscsi

lsscsi :查看服务器硬盘相关信息
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!