2020-03-09

3.9学习内容总结

1

which和whereis

查看命令路径命令
which ls 查找ls命令的绝对路径
whereis ls 查找ls命令的绝对路径,帮助手册等
whereis -b ls 只显示命令的绝对路径

2

sort命令

排序命令
sort 参数 文件
参数:-r 倒序
-n 按照数字排序
-k 指定按照第几列排序
-t 指定分隔符(默认空格)
例1:
[root@oldboy ~]# sort -t ":" -k2 -nr file2.txt | head -3
oldli:30
oldxu:20
oldguo:10
例2:
sort -t "." -k3.1,3.1 -k4.1,4.3 -n ip.txt
3.1 第三列的第一个字符
4.1,4.3 第四列的第一个到第三个字符

3

unip命令

去重命令,在有序的基础上去重
unip 参数 文件
参数:-c 计算重复的行
例1:
sort file3.txt | uniq -c
实现思路:现排序,然后去重,最后统计

4

“|” 管道符

命令1 | 命令2
左边命令的输出作为右边命令的输入,所以管道符将单一的命令连接起来.将命令与命令之间衔接起来,这样能做的事情就是无限的。

5

cut命令

筛选命令
cut 参数 文件
参数: -d 指定分隔符
-f 数字,取第几列
-c 按字符取(空格也算)
例1:
cut -d " " -f 2,5 oldboy.t
-f 2,5(取2列和5列)

6

sed命令

简单的使用
例1:
sed 's#,#o#g'
将第一个#后的,替换为o

7

awk命令

筛选命令
awk 参数 文件
参数:-F "[分隔符]" '{print 2}' 文件名
例1:
高级用法
[ ,]+ +表示重复 前面的字符一次或多次
空格算一个分隔符
逗号算一个分隔符
空格和逗号挨在一起,也算一个分隔符
空格逗号空格,全算一个分隔符

[root@oldboy ~]# awk -F "[ ,]+" '{print 5}' oldboy.txt
oldxu 552408925
awk统计行号
NR: 行号
0变量,
[root@oldboy ~]# awk '{print NR,1}'
11176

8

wc命令

统计命令
wc 参数 文件
参数:-c 显示文件字节
-l 显示文件行数
-w 显示文件单词数
例1:
wc -l /etc/services

综合案例

习题: 分析如下日志,统计每个域名被访问的次数。

[root@student tmp]# cat >>web.log< http://www.xuliangwei.com/index.html
http://www.xuliangwei.com/1.html
http://post.xuliangwei.com/index.html
http://mp3.xuliangwei.com/index.html
http://www.xuliangwei.com/3.html
http://post.xuliangwei.com/2.html
EOF
将访问次数最多的排在上面
[root@oldboy ~]# awk -F '/' '{print $3}' web.log | sort | uniq -c | sort -nr
3 www.xuliangwei.com
2 post.xuliangwei.com
1 mp3.xuliangwei.com

你可能感兴趣的:(2020-03-09)