1、mtr,同时兼具ping和traceroute命令的功能:
.Mtr介绍:
Mtr是 Linux中有一个非常棒的网络连通性判断工具,它结合了ping, traceroute,nslookup 的相关特性。
apt-get install mtr -y
安装mtr工具
2.Mtr的相关参数:
mtr -s
用来指定ping数据包的大小
mtr -no-dns
不对IP地址做域名解析
mtr -a
来设置发送数据包的IP地址 这个对一个主机由多个IP地址是有用的
mtr -i
使用这个参数来设置ICMP返回之间的要求默认是1秒
3.Mtr的输出详解:
mtr 8.8.8.8
使用命令测试到google DNS的连通性
以上报告示例说明:
第一列:显示的是IP地址和本机域名,这点和traceroute很像
第二列:是显示的每个对应IP的丢包率
第三列:snt:10 设置每秒发送数据包的数量
第四列:显示的最近一次的返回时延
第五列:是平均值 这个应该是发送ping包的平均延时
第六列:是最好或者说时延最短的的延时
第七列:是最差或者说时延最长的延时
第八列:是标准偏差
mtr www.baidu.com
image.png
2、last命令:
last命令显示的是用户登入和登出的历史记录,该历史记录来源于/var/log/wtmp文件。
image.png
3、tree命令,显示文件夹树状图:
image.png系统默认没有,所有需要安装
yum -y install tree
4、pstree命令,进程树状图:
这个命令系统自带的
image.png5、stat命令,列出文件的详细信息:
该命令能够详细列出一个文件的信息,比如大小、权限、最后一次访问时间、最后一次修改时间等等,也是一个比较实用的命令。
6、paste并排显示两个或多个文件
建立文件a.txt b.txt c.txt
image.png
使用paste,合并三个打印出来
image.png
7sort命令
默认情况下, sort 命令按照会话指定的默认语言的排序规则对文本文件中的数据行排序
[root@localhost hbk]# cat test.txt
one
two
three
four
five
six
经过sort排序后,可以看到根据字母顺序a-z排序的
[root@localhost hbk]# sort test.txt
five
four
one
six
three
two
若是数字,则使用-n参数
[root@localhost hbk]# sort -n file.txt
1
2
3
4
22
100
sort根据英文日期排序,加上-M参数,可以根据月份的顺序进行排序
[root@localhost ~]# sort -M yue.txt
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
NOV
DEC
sort切割排序
-k 和 -t 参数在对按字段分隔的数据进行排序时非常有用
[root@localhost hbk]# cat file3.txt
2017-02-11
2016-10-22
2018-09-01
我只要根据月份排序,即02,09,10
[root@localhost hbk]# sort file3.txt -t '-' -k 2
2017-02-11
2018-09-01
2016-10-22
同理根据天排序,说明-t指定分隔符,-k后面的数字表示分隔之后的第几列。
[root@localhost hbk]# sort file3.txt -t '-' -k 3
2018-09-01
2017-02-11
2016-10-22
sort默认是升序,-r表示反转,即降序
比较实用的一条命令,查看当前文件夹大小排序,-hr其实是-h和-r的合并,-h表示使用易读性数字(例如: 2K 1G)排序,-r表示降序
[root@localhost hbk]# du -sh *|sort -hr
2.4G tomcat6-8079-manageweb.tar.gz
1.1G mysql-5.6.33-linux-glibc2.5-x86_64
930M tomcat6-8079-manageweb
665M tomcat-8079-manageweb
479M php-7.1.6
221M solr-5.5.5
158M node-v10.6.0-linux-x64
140M zabbix
131M solr-5.5.5.tgz
116M tomcat-8061-publishweb
113M tomcat-8061-publishweb.tar.gz
74M apache-tomcat-7.0.82-solr
66M jdk-6u45-linux-x64-rpm.bin
57M jdk-6u45-linux-amd64.rpm
19M nginx-1.13.1
8.9M nmon16d_x86.tar.gz
8.6M apache-tomcat-7.0.82.tar.gz
8.2M htop
7.7M rsync-3.0.6
6.9M VNC-Server-6.3.2-Linux-x86.deb
6.5M apache-tomcat-6.0.36.tar.gz
4.7M sun-javadb-docs-10.6.2-1.1.i386.rpm
3.9M sun-javadb-core-10.6.2-1.1.i386.rpm
2.9M phpstudy.bin
1.2M solr_home
1.1M ZendGuardLoader-70429-PHP-5.4-linux-glibc23-x86_64
948K sun-javadb-demo-10.6.2-1.1.i386.rpm
8uniq (一般配合sort一起使用)
用法:uniq [选项]... [文件]
从输入文件或者标准输入中筛选相邻的匹配行并写入到输出文件或标准输出。
不附加任何选项时匹配行将在首次出现处被合并。
按连接数查看客户端IP
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
-c, --count 在每行前加上表示相应行目出现次数的前缀编号
-d, --repeated 只输出重复的行
-D, --all-repeated[=delimit-method 显示所有重复的行
delimit-method={none(default),prepend,separate}
以空行为界限
-f, --skip-fields=N 比较时跳过前N 列
-i, --ignore-case 在比较的时候不区分大小写
-s, --skip-chars=N 比较时跳过前N 个字符
-u, --unique 只显示唯一的行
若域中为先空字符(通常包括空格以及制表符),然后非空字符,域中字符前的空字符将被跳过。
提示:uniq 不会检查重复的行,除非它们是相邻的行。所以需要先用sort再使用uniq
9、file命令,获悉文件类型:
file命令同时会告诉你文件的编码方式
image.png
10、tac命令,逆序输出文件内容:
cat倒过来就是tac,完了这个命令的功能还真是逆序输出文本内容:
image.png
11、host和dig命令,查找指定主机的可用IP地址:
比如查找百度的DNS对应的IP,host命令:
image.png
dig命令则更加详细:
image.png
12、ps -LF -u user_name命令,显示指定用户执行的进程信息:
查看xia这个用户执行的进程
image.png
13nl 查看文件 显示行号
语法: nl [-bnw] 文件
选项与参数:
-b :指定行号指定的方式,主要有两种:
-b a :表示不论是否为空行,也同样列出行号(类似 cat -n);
-b t :如果有空行,空的那一行不要列出行号(默认值);
-n :列出行号表示的方法,主要有三种:
-n ln :行号在荧幕的最左方显示;
-n rn :行号在自己栏位的最右方显示,且不加 0 ;
-n rz :行号在自己栏位的最右方显示,且加 0 ;
-w :行号栏位的占用的位数。
快捷键
屏幕输出
Ctrl + l 清除屏幕输出
Ctrl + s 停止屏幕输出
Ctrl + q 恢复屏幕输出
移动光标
Ctrl + a 移动到命令行首
Ctrl + e 移动到命令行尾
Ctrl + f 往前移动一个字符
Ctrl + b 往后移动一个字符
Esc + f 往前移动一个单词(不包含符号)
Esc + b 往后移动一个单词(不包含符号)
Ctrl + xx 在光标当前所处的位置和行首之间切换。
删除
Ctrl + d 删除光标当前位置的字符
Ctrl + h 删除光标前一个字,相当于Window键盘的Backspace或者Mac键盘的delete键
剪切与粘贴
Ctrl + k 从光标当然位置剪切到行尾
Ctrl + u 从光标当然位置剪切到行首
Ctrl + w 从光标当前位置向前剪切整个单词(包含符号)
Esc + Backspace 从当前位置向前剪切一个单词(不包含符号,Mac键盘为Esc + delete键)
Esc + d 从光标当前位置向后剪切一个单词(不包含符号)
Ctrl + y 将剪切板中的文本粘贴到当前光标之前
编辑
Ctrl + - 撤销上一步操作(注意没有反撤销操作,至少目前为止还没发现)
Ctrl + t 交换当前光标所处的字符与前一个字符
Esc + t 交换当前光标所处的单词与前一个单词(不包含符号)
修改大小写
Esc + u 将光标所处位置往后一个单词变为大写
Esc + l 将光标所处位置往后一个单词变为小写
Esc + c 将光标所处位置的字符变为大写,并将往后一个单词变为小写
历史记录
history 可以查看所有命令的历史记录
history -c 清除所有的历史命令
Ctrl + p 上一条命令
Ctrl + n
Ctrl + r 进入历史记录逆向搜索模式
Esc + r 撤消所有对当前历史记录命令的修改
Esc + . 使用上一条命令的最后一个参数
history 该命令实际上相当于cat ~/.bash_history。大家可以看一下自己操作系统用户目录下的.bash_hitory文件,里面记录了命令执行的序号、时间、命令以及所有参数。
命令缩写
!! 执行上一条命令
!command 执行上一条以“command”开头的命令
^command 删除上一条命令中的”command”并执行
^command1 ^command2 将上一条命令中第一个”command1”替换为”command2”并执行
^command1 ^command2 ^ 将上一条命令中所有的”command1”替换为”command2”并执行
网友评论