linux常见命令汇总-阿里云开发者社区

开发者社区> 开发与运维> 正文

linux常见命令汇总

简介:

1. ls

         ls -l -R /home/peidachang   列出/home/peidachang文件夹下的所有文件和目录的详细资料

         ls -l t*   列出当前目录中所有以“t”开头的目录的详细内容

         ls -l * |grep "^-"|wc -l ---文件个数 

         ls -sSh 列文件大小大圩排列

 

2. cd 切换目录

 

3. pwd 查看当前目录

 

4. mkdir 创建目录

         mkdir -p test2/test22  递归创建多个目录

         mkdir -m 777 test3  创建权限777的目录

        

5. rm 删除

         rm 文件:询问是否删除

         rm -f 文件 :强行删除不询问

         rm -fr 文件 : 强行删除,并递归删除子目录

        

6. rmdir 删除目录

 

7. mv 移动备份改名文件

         mv test.log test1.txt   改名

         mv -i log1.txt log2.txt    改名,询问重复时是否覆盖

         mv -f log3.txt log2.txt    改名直接覆盖

         mv test1.txt test3    test1.txt移动到test3目录,多个时:mv log1.txt log2.txt log3.txt test3

         mv * ../   移动当前目录所有文件到上一级目录

        

8. cp 复制

         cp log.log test5   复制log.logtest5目录

         cp -a test3 test5  复制整个目录

        

9. touch 修改文件时间戳   新建文件

         touch log2012.log log2013.log  创建两个文件

         touch -r log.log log2012.log  更新log.log的时间和log2012.log时间戳相同

         touch -t 201211142234.50 log.log   设定文件的时间戳

        

10. cat 链接文件

         cat log2012.log  一次显示整个文件    tac log2012.log 从后往前显示

         cat -n log2012.log log2013.log    log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里

         cat -b log2012.log log2013.log log.log   log2012.log  log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 

 

11. nl 显示行号

         nl log2012.log   nl 列出 log2012.log 的内容和行号,忽略空白行

         nl -b a log2012.log    nl 列出 log2012.log 的内容,空本行也加上行号

        

12. more 分页显示文件

         more +3 log2012.log   显示文件中从第3行起的内容

         more +/day3 log2012.log   从文件中查找第一个出现"day3"字符串的行,并从该处前两行开始显示输出

         more -5 log2012.log  设定每屏显示行数5

         ls -l  | more -5    每行5个显示

         Ctrl+F   向下滚动

         空格键  向下滚动

         Ctrl+B  返回上一屏

        

13. less  more更强大的分页显示

 

14. head 显示文件的开头部分

         head -n 5 log.log  显示开头的5

         head -n -5 log.log  显示除了最后5行意外的部分

         head -c 20 log.log  显示开头的20个字节

         head -c -32 log.log 显示除最后32个字节意外的部分

 

15. tail 显示文件末尾部分,与head类似

         tail -f log.log  循环刷新显示末尾

         tail -n 5 log.log  显示结尾的5

         tail -n +5 log.log  从第五行开始显示

        

16. which 查找可执行文件位置

         which java  搜索java位置

        

17. whereis 程序名搜索,只搜 二进制、man说明文件、源代码文件。搜索数据库,因此很快,一周更新一次数据库,滞后。find是实时搜索磁盘

         whereis svn

         whereis -b svn  值查找二进制文件

        

18. locate 快速搜索档案库,每天跑一次档案库

         locate pwd 查找pwd的相关所有文件

        

19. find 磁盘搜索

         find 路径 -参数 [命令]

         find . -name "*.log"   当前目录查找.log结尾的文件

         find . -type f -name "*.log"   当前目录查找类型问f文件的,名称为*.log的文件

         find . -type d | sort 当前目录查找目录类型并排序

         find /opt/soft/test/ -perm 777  查找权限777的文件

                   -mtime -n +n  按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前。

                   -size n[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计

         find test -path "test/test3" -prune -o -print  test目录下查找文件,但不希望在test/test3目录下查找

         find . -type f -exec ls -l {} \;   find命令匹配到了当前目录下的所有普通文件,并在-exec选项中使用ls -l命令将它们列出

         find . -type f -mtime +14 -exec rm {} \;     在目录中查找更改时间在n日以前的文件并删除它们

         find . -name "*.log" -mtime +5 -ok rm {} \;  在目录中查找更改时间在n日以前的文件并删除它们,在删除之前先给出提示

         find . -name "*.log" -exec mv {} .. \;   查找文件移动到指定目录 

         find . -name "*.log" -exec cp {} test3 \;

         xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。这样它可以先处理最先获取的一部分文件,然后是下一批,并如此继续下去。

         find . -perm -7 -print | xargs chmod o-w   在当前目录下查找所有用户具有读、写和执行权限的文件,并收回相应的写权限

         find / -name "core" -print | xargs echo "" >/tmp/core.log   在整个系统中查找内存信息转储文件(core dump) ,然后把结果保存到/tmp/core.log 文件中

         find . -type f -print | xargs grep "hostname"    grep命令在所有的普通文件中搜索hostname这个词

        

20. chmod 改变权限

         chmod a+x log.log  给所有用户(a) 增加(+) 执行(x) 权限

         chmod ug+w,o-x log.log 文件属主(u 增加写权限;与文件属主同组用户(g 增加写权限;其他用户(o 删除执行权限

         chmod a-x log.log 所有用户删除执行权限

         chmod u=x log.log 撤销原有所有权限,使拥有者有可执行权限

         chmod -R u+x log.log 递归赋权限,所有者增加执行权限

         chmod 751 file 给属主分配读写执行,所在组读执行,其他用户执行

         chmod u=rwx,g=rx,o=x file

         chmod =r file  所有用户分配读权限

         chmod 444 file 同上

         chmod a-wr,a+r 同上

        

21. tar 打包(不压缩)

         tar xvf fileName.tar  x解包提取v显示操作过程f指定打包文件名

         tar cvf fileName.tar DirName c建立新的打包文件,v显示操作过程f指定打包文件名

         tar zxvf fileName.tar.gz  zx支持gzip压缩文件

         tar zcvf fileName.tar.gz DirName zc支持gzip解压文件

         tar jxvf fileName.tar.gz  jx支持bzip2压缩文件

         tar jcvf fileName.tar.gz DirName jc支持bzip2解压文件

         unzip fileName.zip

         zip fileName.zip DirName

         rar x fileName.rar

         rar a fileName.rar DirName

 

22. chgrp 改变文件组

         chgrp -v bin log.log  文件由root群组改为bin群组

         chgrp -R bin logDir 文件夹及内部所有子文件递归由root群组改为bin群组

         chgrp --reference=log2.log log1.log  改变log1.log群组属性,使得和log2.log相同

        

23. chown 改变文件所有者

         系统管理员拷贝文件到另一个用户目录后改变文件所有者为那个用户

         chown user:group log.log

         chown user: log.log

         chown :group log.log

         chown -R -v root:mail dirName

        

24. gzip 压缩解压缩

         gzip * 把当期目录所有文件分别压缩

         gzip -dv * 把当前目录所有的压缩文件解压缩,-d解压缩v显示过程信息

         gzip -rv dirName 递归分别压缩目录里的所有文件,不打包

         gzip -dr dirName 上面的解压缩

        

25. df查询磁盘信息

         df 显示磁盘使用情况

         df -t ext3 显示指定类似ext3磁盘

         df -T 列出文件系统类似

         df -h 更易读的方式显示磁盘信息

        

26. du 显示目录和文件占用空间

         du -h * | sort -n

         du -s ./* | sort -rn r倒序排列

         du log.log 显示文件占用空间

         du log2.log log3.log log4.log  显示多个文件大小

         du dirName 目录空间占用

         du -s dirName 显示总和大小

         du -h 方便阅读显示

         du -ah dirName 文件目录都显示

         du -c log1.log log2.log 分别显示大小,并统计显示总大小,-s的增强

         du|sort -nr|more 按空间大小排序

        

27. ln 软硬连接,软是文件或者目录的快捷方式,硬是文件拷贝,都可同步

         ln -s log.log link1   建立log.log的快捷方式link1

         ln log.log ln1 建立硬连接

         rm -fr 删除:硬连接任然存在,软链接会闪烁提示源不存在

         ln -sv /opt/soft/test/test3 /opt/soft/test/test5 必须绝对路径

        

28. diff 比较文件差异

         diff log1.log log2.log 比较两个文件差异,输入差异的地方

         diff log1.log log2.log -y -W 50 并行左右输出-y,宽度50字符,比较

         diff log1.log log2.log -c 上下文输出格式

         diff dir1 dir2 比较文件夹不同

        

29. date 命令

         date 显示当前时间

        

30. cal 显示日历

         cal 9 2014 显示 2014 9月日历

         cal -y 2014 显示整年日历

         cal -m 显示日历,星期一显示在第一列

        

31. grep

         ps -ef|grep svn -c 指定进程个数

         cat test.txt | grep -f test2.txt  test中过滤,按照test2.txt中的规则过滤

         cat test.txt | grep -nf test2.txt 外加现实行号

         grep 'linux' test.txt test2.txt  文件中搜索linux

         grep aux | grep ssh | grep -v "grep"  过滤含有ssh含有grep 的进程

         cat test.txt | grep ^u   找出u开头的所有行

         cat test.txt | grep ^[^u]  找出非u开头的所有行

         cat test.txt | grep hat$  hat结尾的行

         cat test.txt | grep -E "ed|at"  含有ed或者at字符的内容行

         grep '[a-z]\{7\}' *.txt  目录下.txt结尾的文件中,搜索含有连续7个字符的行

        

32. wc word count 统计字数、字节数、行数

         wc test.txt  行数 单词数 字节数

         -c 统计字节数    -l 统计行数  -m 统计字符串数  -w 统计字数

        

33. ps Process Status

         ps -A 所有进程

         ps -u root root用户的进程

         ps -ef 显示所有进程  e显示环境变量   f显示程序之间的关系

         ps -au 显示详细信息

         ps aux 列举所有内存中的程序

        

34 kill pid杀进程

         kill -9 pid

        

35 killall 按名称啥进程

         killall vi

         killall -9 bash 把所有登陆后的bash杀掉

        

36 top 进程资源占用,类似windows任务管理器   http://www.jb51.net/LINUXjishu/34604.html

         top -Hp pid  查询指定进行的线程资源占用情况

         shift + h 切换线程

         1 切换查看多处理器每个内核情况

         P:按%CPU使用率排行

  T:按MITE+排行

  M:按%MEM排行

         内容:

                   当前时间   系统运行时间   当前登陆用户数   1/5/15分钟load负载

                   进程总数   ***  zombie:僵尸进程数

                   处理器: us:用户空间占用CPU百分比     sy:内核空间占用CPU百分比    ni:用户进程空间内改变过优先级的进程占用CPU百分比  id:空闲CPU百分比

                                      wa:等待输入输出的CPU时间百分比  hi 硬中断   si  软中断

                   内存: buffers:用作内核缓存的内存量   cached:缓冲的交换区总量

                   进程: PR:优先级     NI:nice值。负值表示高优先级,正值表示低优先级     VIRT: 进程使用的虚拟内存总量,单位kbVIRT=SWAP+RES

                               SWAP:进程使用的虚拟内存中,被换出的大小,单位kb       RES:进程使用的、未被换出的物理内存大小,单位kbRES=CODE+DATA

                               SHR: 共享内存大小,单位kb     S:D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

                               TIME+: 进程使用的CPU时间总计,单位1/100

        

37 free 查询内存命令

         free -g G为单位显示内存情况   -mM显示

         free -s 10 10秒显示一次

         输出: http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html

                   第一行的输出时从操作系统(OS)来看的。也就是说,从OS的角度来看:

                            shared 表示被几个进程共享的内存

                            buffercache可以被快速回收的

                            A buffer is something that has yet to be "written" to disk.

                            A cache is something that has been "read" from the disk and stored for later use.

                   free输出的第二行是从一个应用程序的角度看系统内存的使用情况。 

                            一个应用程序认为系统被用掉多少内存(一行的used - buffer - cache

                            一个应用程序认为系统还有多少内存(一行的free + buffer + cache 

          

38 vmstat 虚拟内存使用    http://blog.csdn.net/chinalinuxzend/article/details/1761998

         vmstat 5 1000 5s采样一次,采样1000

         vmstat -a 5 1000 显示活跃和非活跃内存大小

         vmstat -f 查看fork多少次

         vmstat -s 内存使用详细信息

         vmstat -d 统计所有磁盘读写

         vmstat -p /dev/sda1  统计指定磁盘读写

         vmstat -m 查看slab小对象创建销毁缓存区

         r 表示运行队列(就是说多少个进程真的分配到CPU),当这个值超过了CPU数目,就会出现CPU瓶颈了。一般负载超过了3就比较高,超过了5就高,超过了10就不正常了

         b 表示阻塞的进程,这个不多说,进程阻塞,大家懂的。

         swpd 虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了

         free   空闲的物理内存的大小,我的机器内存总共8G,剩余3415M

         buff   Linux/Unix系统是用来存储,目录里面有什么内容,权限等的缓存,我本机大概占用300M

         cache cache直接用来记忆我们打开的文件,给文件做缓冲,Linux/Unix把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高 程序执行的性能

         si  每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。我的机器内存充裕,一切正常。

         so  每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上。

         bi  块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024byte,我本机上没什么IO操作,所以一直是0,但是我曾在处理拷贝大量数据(2-3T)的机器上看过可以达到140000/s,磁盘写入速度差不多140M每秒

                   This shows the number of blocks read from the disk in the previous interval

         bo 块设备每秒发送的块数量,例如我们读取文件,bo就要大于0bibo一般都要接近0,不然就是IO过于频繁,需要调整。

                   This indicates the number of total blocks written to disk in the previous interval

         in 每秒CPU的中断次数,包括时间中断

         cs 每秒上下文切换次数,例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,这个值要越小越好,太大了,要考虑调低线程或者进程的数目,例如在apachenginx这种web服务器中,我们一般做性能测试时会进行几千并发甚至几万并发的测试,选择web服务器的进程可以由进程或者线程的峰值一直下调,压测,直到cs到一个比较小的值,这个进程和线程数就是比较合适的值了。系统调用也是,每次调用系统函数,我们的代码就会进入内核空间,导致上下文切换,这个是很耗资源,也要尽量避免频繁调用系统函数。上下文切换次数过多表示你的CPU大部分浪费在上下文切换,导致CPU干正经事的时间少了,CPU没有充分利用,是不可取的。

         us 用户CPU时间,我曾经在一个做加密解密很频繁的服务器上,可以看到us接近100,r运行队列达到80(机器在做压力测试,性能表现不佳)

         sy 系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。

         id  空闲 CPU时间,一般来说,id + us + sy = 100,一般我认为id是空闲CPU使用率,us是用户CPU使用率,sy是系统CPU使用率。

         wt 等待IO CPU时间。 This indicates the amount of CPU time spent waiting for I/O to complete

         -s:

                   cpu ticks  时钟频率

                   nice user cpu ticks  nice加权的进程  用户态CPU频率

                   IRQ cpu ticks  中断请求的 cpu频率

                   softirq cpu ticks  软中断 cpu频率

                   CPU context switches  处理器上线文切换次数

                   pages paged in   IN分页的 VM页面数

                   pages paged out  OUT分页的 VM页面数

                   pages swapped in   IN交换的 VM页面数

                   pages swapped out    OUT交换的 VM页面数

                   forks  fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。

         -D/-d:

                   partitions  总分区数

                   total reads 请求读总数

                   merged reads 不同的读请求归并到一起读的次数(优化读性能)

                   read sectors  读磁盘扇面总数

                   milli reading  读磁盘耗费时间

                   inprogress IO IO: cur):  The total number of I/O that are currently in progress

                   milli spent IOIO: s):  This is the number of milliseconds spent waiting for I/O to complete

        

39 iostat 输入输出统计,磁盘   http://blog.csdn.net/chinalinuxzend/article/details/1761998

         iostat 2 100 2秒一次,采集100次,显示cpuio

         iostat -c 只显示cpu信息

         iostat -d sda1 显示指定磁盘(d)信息

         iostat -m m为单位显示

         iostat -d -k 显示磁盘信息,k为单位,包括tps和吞吐量

         iostat -d -x -k 2 1000 显示使用率和响应时间,-x显示详细信息

         iostat -x :  This shows extended-performance I/O statistics.

                   tps Transfers per second. This is the number of reads and writes to the drive/partition per second.

                   Blk_read/s   The rate of disk blocks read per second.

                   Blk_read   The total number of blocks read during the interval.

                   rrqm/s : The number of reads merged before they were issued to the disk

                   wrqm/s : The number of writes merged before they were issued to the disk.

                   r/s : The number of reads issued to the disk per second.

                   w/s : The number of writes issued to the disk per second.

                   rsec/s : Disk sectors read per second.

                   wsec/s : Disk sectors written per second.

                   rkB/s :  Kilobytes read from disk per second.  每秒读磁盘多少K

                   wkB/s : Kilobytes written to disk per second.

                   avgrq-sz :  The average size (in sectors) of disk requests.

                   avgqu-sz : The average size of the disk request queue.

                   await :  The average time (in ms) for a request to be completely serviced. This average includes the time that the request was waiting in the disk's queue plus the amount of time it was serviced by the disk.

                   svctm :  The average service time (in ms) for requests submitted to the disk. This indicates how long on average the disk took to complete a request. Unlike await, it does not include the amount of time spent waiting in the queue.

        

        

40 watch 周期执行命令、定时执行命令 时显示结果,因为有的命令没有定时刷新显示参数

         watch -n 1 -d netstat -ant  没一秒   执行一次 netstat -ant命令,-d高亮显示差异

         Ctrl + g 取消

         watch -n 1 -d 'pstre|grep http'  每隔一秒高亮显示http连接数的变化

         watch -n 10 'cat /proc/loadavg' 10秒输出一次系统负载

        

41 at 预订时间执行一次任务

         at 5pm+3 days  3天后 下午5点执行后面输入的任务

         at 17:20 tomorrow

         atq  查询所有预订任务

         atrm 编号      删除预订任务

        

42 crontab定时执行任务,多次执行

         minute hour day month week command

         yum install crontabs

         /sbin/service crond start

         /sbin/service crond stop

         /sbin/service crond restart

         /sbin/service crond reload

         service crond status

         ntsysv 查看系统开机启动

         chkconfig -level 35 crond on  开机启动crond

         创建crontab 文件 mytest

         crontab mytest

         crontab -l 列出

         crontab -e 编辑

         crontab -r 删除

         * * * * * cmd 每一份钟执行一次

        

43 lsof 查看进程打开的文件,打开文件的进程,进程打开的端口

         lsof

         lsof /bin/bash  查看谁在使用/bin/bash文件

         lsof -D test/test3 递归查看某个目录的文件信息

         lsof | grep 'test/test3' 同上

         lsof -u liufei.cxd 用户打开的文件

         lsof -c mysql -c apache 某个进程打开的文件

         lsof -p 1,2,3    1,2,3进程打开的文件

         lsof -i  列出所有网络连接信息

         lsof -i tcp

         lsof -i udp

         lsof -i :3306

         lsof -i udp:55

         lsof -i tcp:80

        

44 ifconfig 查看ip,网卡管理

         ifconfig  查看ip

         ifconfig eth0 up   打开eth0网卡

         ifconfig eth0 down  关闭eth0网卡

        

45 route 显示和操作IP路由表

 

46 ping ip测试联通性

         ping 192.168.1.201

         ping -c 10 192.168.1.23  ping 10 

         ping -c 10 -i 0.5 ip    -i 间隔0.5秒就发一个包

        

47 traceroute 一台机器到另一台机器的路由经过

         traceroute www.baidu.com

         traceroute -m 10 www.baidu.com  最多10

         tracetoute -n www.baidu.com 显示ip不显示主机名

        

48 netstat IP\TCP\UDP\ICMP协议数据统计

         netstat -a 列出所有端口  -a显示所有连线中的socket

         netstat -nu 显示当前UDP链接情况    -n显示IP,不通过域名服务器  uudp  t:tcp

         netstat -apu 显示uDP端口和使用情况     -p正在使用

         netstat -s 显示网络统计信息

         netstat -l 显示监听的套接口

         netstat -n 显示所有已建立的链接

         netstat -e 显示以太网的统计数据

         netstat -r 显示路由表信息

         netstat -at 列出所有tcp端口

         netstat -ap | grep ssh  显示程序运行的端口

         netstat -anpt | grep ':8080' 显示运行在指定端口的进程

        

         netstat -st  tcp统计信息

         netstat -ie 显示网卡列表并统计以太网信息

        

49 ss 显示socket信息,比netstat更快更详细

         ss -t -a    -t显示tcp连接,-a显示所有socket

         ss -s   -s统计显示套接字使用概况

         ss -l   -l列举所有打开的网络连接端口

         ss -pl  -p查看进程使用的socket

         ss -pl |grep 3306

         ss -u -a   -u UDPsocket

         ss dest 192.1.1.1:443  匹配目的地址和端口号

         ss src 192.1.1.1:80  匹配本地地址和端口

        

50 wget 下载文件 从网络下载资源

         wget http://....*.zip

         wget http://127.0.0.1:7001/status.1688

        

51 sort

         sort -u seq.txt   去除重复行

         sort -r number.txt  降序

         sort -n number.txt  要以数值来排序

         sort -n -k 2 -t : facebook.txt   -t 设定间隔符    -k 定列数,按哪列排序

         -b会忽略每一行前面的所有空白部分,从第一个可见字符开始比较。

         -f会将小写字母都转换为大写字母来进行比较,亦即忽略大小写

        

52 uniq

         uniq -c   一般用于排序后,统计相邻行的重复出现次数,输出为: 重复次数 重复内容

         uniq -d   只输出重复行

         uniq -d   只显示文件中不重复的各行

        

53 python发布web服务:

         python -m SimpleHTTPServer 7777

        

54 nicstat   网络流量统计实用工具  http://www.linuxidc.com/Linux/2013-07/86941.htm

         ./nicstat.sh -l   查看网卡速度

         ./nicstat 3 2   间隔3,查看2次结果

         ./nicstat 3 2 -x   查看扩展信息

         ./nicstat.sh -t   查看tcp相关信息

         ./nicstat.sh -u   查看udp相关信息

         ./nicstat.sh -M   默认以KB为单位,现在以M单位查看

                   参数:

                            lo and eth0 : 网卡名称.

                            rKB/s : 每秒接收到千字节数.

                            wKB/s : 每秒写的千字节数.

                            rPk/s : 每秒接收到的数据包数目.

                            wPk/s : 每秒写的数据包数目.

                            rAvs : 接收到的数据包平均大小.

                            wAvs : 传输的数据包平均大小.

                            %Util : 网卡利用率(百分比).

                            Sat : 网卡每秒的错误数.网卡是否接近饱满的一个指标.尝试去诊断网络问题的时候,推荐使用-x选项去查看更多的统计信息.

                            -t

                            InKB : 表示每秒接收到的千字节.

                            OutKB : 表示每秒传输的千字节.

                            InSeg : 表示每秒接收到的TCP数据段(TCP Segments).

                            OutSeg : 表示每秒传输的TCP数据段(TCP Segments).

                            Reset : 表示TCP连接从ESTABLISHEDCLOSE-WAIT状态直接转变为CLOSED状态的次数.

                            AttF : 表示TCP连接从SYN-SENTSYN-RCVD状态直接转变为CLOSED状态的次数,再加上TCP连接从SYN-RCVD状态直接转变为LISTEN状态的次数

                            %ReTX : 表示TCP数据段(TCP Segments)重传的百分比.即传输的TCP数据段包含有一个或多个之前传输的八位字节.

                            InConn : 表示TCP连接从LISTEN状态直接转变为SYN-RCVD状态的次数.

                            OutCon : 表示TCP连接从CLOSED状态直接转变为SYN-SENT状态的次数.

                            Drops : 表示从完成连接(completed connection)的队列和未完成连接(incomplete connection)的队列中丢弃的连接次数.

                            -u

                            InDG : 每秒接收到的UDP数据报(UDP Datagrams)

                            OutDG : 每秒传输的UDP数据报(UDP Datagrams)

                            InErr : 接收到的因包含错误而不能被处理的数据包

                            OutErr :因错误而不能成功传输的数据包.

55 proc

         /proc/cpuinfo - CPU 的信息(型号家族缓存大小等)

         /proc/meminfo - 物理内存、交换空间等的信息

         /proc/mounts - 已加载的文件系统的列表

         /proc/devices - 可用设备的列表

         /proc/filesystems - 被支持的文件系统

         /proc/modules - 已加载的模块

         /proc/version - 内核版本

         /proc/cmdline - 系统启动时输入的内核命令行参数

        

56 pstack

         pstack pid > pstack.txt

        

57 history  查看历史命令

         history 10 历史10条命令

        

58 last 显示历史登陆用户

 

59 查看linux操作系统日志 /var/log/

         sudo  -u root grep 'java' /var/log/messages   查看指定进程的操作系统日志

                    messages 日志是核心系统日志文件。它包含了系统启动时的引导消息,以及系统运行时的其他状态消息。IO 错误、网络错误和其他系统错误都会记录到这个文件中。

                    其他信息,比如某个人的身份切换为 root,也在这里列出。如果服务正在运行,比如 DHCP 服务器,您可以在 messages 文件中观察它的活动。

                    通常,/var/log/messages 是您在做故障诊断时首先要查看的文件。

         dmesg 用来显示内核环缓冲区(kernel-ring buffer)内容,内核将各种消息存放在这里

                   硬盘性能低下  dmesg | grep DMA

                   以太网连接出现问题  dmesg | grep eth

                   sudo dmesg|grep -i kill|less

60 tree  树状列文件及目录

         tree -s 列出文件及目录大小

                  

61 文件分割:

         split -b 2000m filename    copy /B file + file2 newFile

        

62 echo 输出并换行

         -n 取消末尾的换行输出

         -e 开启反斜杠控制字符串转义   -E关闭

 

63 ''    "" 区别:

         ' ' (引號),凡在 hard quote 中的所有 meta 均被关闭。

         " " (雙引號),在 soft quoe 中大部份 meta 都会被关闭,但某些則保留( $ )

 

64 命令群组:()  {}

         ( )  command group  sub-shell 行,也稱 nested sub-shell

         { } 則是在同一個 shell 完成,也稱 non-named command group

         若,你上一章的 fork  source 的概念還記得了的話,那就不難理解者的差異了。

         要是在 command group 中扯上變量及其他環境的修改,我們可以根不同的需求使用 ( )  { } 

         通常而言,若所作的修改是臨時的,且不想影響原有或以的設定,那我們就 nested sub-shell 

         反之,則用 non-named command group 

        

65 tsar /  sar 查看最近一天的处理器及内存占用情况:

         tsar -d 20150404     查看201544日的情况

         sar -u -o saveFile.txt 10 5  查询cpu信息,保存为文件saveFile.txt  10秒采集一次,采集5

         sar -A  输出所有报告的综合

         sar -u 统计处理器情况

         sar -r 统计内存    -R统计内存页面

         sar -b 统计IO和传输率

         sar -c 统计进行创建数信息

         sar -w 文件系统交换情况

         怀疑CPU存在瓶颈,可用 sar -u  sar -q 等来查看

         怀疑内存存在瓶颈,可用 sar -Bsar -r  sar -W 等来查看

         怀疑I/O存在瓶颈,可用 sar -bsar -u  sar -d 等来查看

        

66 显示进程的内存映像信息:  pmap

         pmap [ -x | -d ] [ -q ] pids

            -x   extended       Show the extended format. 显示扩展格式

       -d   device         Show the device format.   显示设备格式

       -q   quiet          Do not display some header/footer lines. 不显示头尾行

       -V   show version   Displays version of program. 显示版本

         pmap -x 8092 | grep tddl

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章