管道命令(一)

将数据经过一定处理后输出所需要的形式,此时可以通过管道命令来实现 . 管道命令使用 | 作为界定符号 .
注意事项

`管道命令仅会处理standard output,对于standard error output会予以忽略 .
`管道命令必须要能够接受来自前一个命令的数据成为standard input继续处理 .

【1】
选取命令 : cut ( 切记:cut处理的信息是以"行"来分析)
示例一 :  cut -d ': ' -f 3
管道命令(一) - DAWN - CGYDAWN
 解释 : 自定义变量mypath=/cgy/path1:/cgy/path2:/cgy/path3:/cgy/path4 , 以 : 为分隔符 , 使用管道命令输出指定的第三段内容(/cgy/path3)

示例二 : export | cut -c 5-8
管道命令(一) - DAWN - CGYDAWN
解释 : 自定义变量mypath , 截取指定第5~第9的字符,如果想截取第5~最后一个字符 , -c 后的参数改为5-

什么时候使用cut命令?
cut主要的用途在与将同一行里面的数据进行分解 , 最常使用在分析一些数据或文字数据的时候 . 这是因为有时候我们会以某些字符当做切割的参数 , 然后来将数据加以切割 . 但是 , cut在处理多空格相连的数据时 , 可能较为吃力 .

【2】
选取命令 : grep
示例一 : last | grep 'cgy'
管道命令(一) - DAWN - CGYDAWN
 
示例二 : last | grep 'cgy' | cut -d ' ' -f 1
管道命令(一) - DAWN - CGYDAWN
解释 : 当执行了last | grep 'cgy' 后,获取示例一的数据信息 , 接着再次执行cut -d ' ' -f 1 , 获取示例一数据信息的第一列
 
示例三 : last | grep -v 'cgy'     (-v参数 反选不包含cgy字符的行)
管道命令(一) - DAWN - CGYDAWN
 解释 : 自定义文件myman.config , --color=auto 参数可以将符合规则的字符用颜色标示出来

【3】
排序命令 : sort
示例一 : cat /etc/passwd | sort -t ':' -k 3 -n
管道命令(一) - DAWN - CGYDAWN
解释 : -t参数表示以某字符切割某一行的信息 , -k参数表示以哪一列排序 , -n参数表示以数字方式排序 . (:图中第一个黄线处画错,应该为再左边的一个0)
 
排序命令 : uniq  (去掉重复元素,一般配合排序使用)
示例一 : last | cut -d ' ' -f1 | sort | uniq
管道命令(一) - DAWN - CGYDAWN
解释 : 将last命令显示的最近登陆的用户信息 , 用cut截取账户名的列(第一列) , 使用sort命令进行排序 , 最后使用uniq对于重复的列进行合并只显示一个 . 
 
示例二 : 加入参数-c即可获取该重复出现的次数 .
管道命令(一) - DAWN - CGYDAWN
 
排序命令 : wc    (统计文件的字,行,字符)
示例一 : cat myman.config | wc
管道命令(一) - DAWN - CGYDAWN
解释 : -l参数表示行数 , -w参数表示字数 , -m参数表示字符数 .

示例二 : last | grep [a-zA-Z] | grep -v 'wtmp' | wc -l
管道命令(一) - DAWN - CGYDAWN
解释 : 该命令作用为统计last登录信息的总行数(除去空白行和wtmp行) , 首先使用grep [a-zA-Z]选择包含大小写英文字母的行(即排除空白行) , 利用grep -v ' wtmp'排除wtmp那一行 , 最后配合wc -l统计剩下符合要求的总行数 .
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值