shell常用于和管道“|”配合的命令

管道“|”

管道常用于处理多重处理,把前一个命令的输出作为下一个命令的输入传入。

简单来说,可以看作生产的每一道工序,一个工序做完后传给下一道工序

所以管道符是一个非常常用的,会和多种命令配合使用,下面博主就介绍一些常与“|”配合的命令

1、cut命令

截取字符串

选项:

-d:后面接分隔符,分隔符要用引号括起来要和-f配合。

-c:后面接的是第几个字符。

-b:  后面接的是第几个字节

-f:后面接的是第几个区块。

演示:

按照“:” 分割,并且获取第一个区块的内容

注意可以使用, - 连接数字 ,是指定的这几个区块连起来 -是第几个区块到第几个区块

cat /etc/passwd |cut -d ":" -f1|head -5

 ,和- 区别

 -c和-b的差别具体体现在对汉字的截取

 2、sort命令

对输入排序

选项:

-t: 后面跟分隔符,作用和cut -d一样

-n:表示使用纯数字排序

-r:表示反向排序

-u:表示去重复

-kn1,n2:表示由n1区间排序到n2区间,可以只写-kn1,即只对n1字段排序

没啥好说的,就是排序,根据选项自己调节排序规则

按照:分区,然后按照分区一来排序 

3、wc命令 

统计

选项:

-l(统计行数)

-m(统计字符数)

-w(统计词数)

4、uniq命令 

删除重复行

选项:
        -c:在数据行前出现的次数
        -d:只打印重复的行,重复的行只显示一次
        -D:只打印重复的行,重复的行出现多少次就显示多少次
        -f:忽略行首的几个字段
        -i:忽略大小写
        -s:忽略行首的几个字母

注意必须要连续的重复才可以成功删除

必须重复,所以一般搭配sort命令使用 

 

5、 tee命令

类似于重定向>,但是它会显示追加了什么内容

6、tr命令 

用来实现替换

选项:

-d:表示删除某个字符,后面跟要删除的字符。

-s:表示删除重复的字符。

 7、split命令 

用于切分字符串

选项:

-b:值为每一输出档案的大小,单位为 byte。

-C:每一输出档中,单行的最大 byte 数。

-d:使用数字作为后缀。

-l:值为每一输出档的行数大小。

-a:指定后缀长度(默认为2)。

8、awk命令

awk可以对读入的每一行进行切分,并且内部支持使用判断、循环、变量、甚至数组,功能十分强大,还可以输出,可以说是功能最灵活的文本格式化处理工具。

基本语法:

awk [options] ‘/pattern/ {action}’  FILE

选项(options):

-F指定分隔字段符
-v定义或修改一个awk内部变量
-f从脚本文件中读取awk命令

模式(pattern):

/正则/ 内部写正则匹配,只有满足正则的才会被匹配处理

BEGIN{} 在开始处理时执行一次

END{} 在结束处理时执行一次

{action}:最常使用print printf进行输出

内置变量: 

$n指定分隔符后,当前的第n个列所在的字段
$0完整的一行记录
FS字段分隔符,默认是空格
FILENAME当前处理文件名
ARGC命令行参数的个数
NF字段分隔后,当前一共多少个字段
NR当前记录数,行数

操作符:

几乎适用所有操作符

== += + - * / &&等等 

但是有独特的操作符

~:匹配正则

!~:不匹配正则

举例:

以 :分割 且以bash结尾的第一个截取的字段

 获取以#开头的行数个数,最后再输出总和

这个例子使用了两次管道

我们来一一分析

首先第一个awk 按照%把内容拆分成两段,输出第一段给下个awk处理,

解释一下/^\/dev的意思就是以/dev开头的意思啦,\用来转义

然后第二个awk,默认按照空格来切分,最后一段,也就是%前面的字段,如果大于5就输出文件系统的名字

总结:找出已用超过5%的文件系统名

 awk的强大功能远不止如此,还可以结合whlie,for,函数一起使用(太强了)


以上就是一些可以与“|”管道符,联合使用的命令,以上命令的选项只截取常用部分,且还会继续更新

如果有错误欢迎评论区言

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值