码迷,mamicode.com
首页 > 其他好文 > 详细

字符提取命令

时间:2016-06-05 01:00:11      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

1、cut


cut命令是用来提取列的  

  cut [选项] 文件名

  选项:

        -f 列号

           -d  分割符

提取下面文本文件中所有名字,列使用Tab键作为分割的

技术分享

技术分享

当然也可以指定分割符,提供普通用户的用户名

技术分享

但是cut命令有其局限性,就是每列的分隔符个数不确定时(比如有多个空格),这样我们就无法进行提取了。

2、printf命令


技术分享

技术分享

  这里的prinf和C中的用法差不多,有点不同是其参数个数可以多于输出类型的个数。对于上面的例子我们可以这样理解,第一个%s匹配第一参数1,第二个%s配第二个参数1,然后直接输出并换行。然后从剩余的参数中从左向右再次匹配。然后输出,如果没有匹配到参数就不输出。

  printf命令的主要作用就是给awk命令提供服务

3.awk命令


awk命令太过于复杂,这里只进行简答的介绍,主要弥补cut命令的不足

技术分享

技术分享

输出41,其中的$5代表第五列

技术分享

  • 添加条件

  技术分享

  这里的BEGIN是awk中的关键字,在处理文本之前先执行该命令。但是如果不加,结果如下

  技术分享

  这是因为awk在执行的时候也是按行读取来处理的,每读一行执行下一条件判断语句。与BEGIN相对应的就是END,意思是在整个数据处理完后执行某些动作。

  •  指定分割符

  awk默认是以空白为分割的(不管是空格还是制表符),这里我们可以通过FS来指定分割符

  技术分享

  输出所有的用户名

 

 

 

 

字符提取命令

标签:

原文地址:http://www.cnblogs.com/xidongyu/p/5559912.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!