cut
2015-09-21 12:04
369 查看
cut是一个针对行的数据选取命令
SYNOPSIS
cut [OPTION]... [FILE]...OPTION
-b 以字节为单位进行分割,如果是多字节的话就需要注意了
-c 以字符为单位进行分割
-d 自定义分割符,默认为制表符
-f 显示哪个区域,与-d一起使用
-n 表示一个范围,可与-b和-c一起使用
-s 表示不包括那些不含分隔符的行
愉快的就开始吧
[root@iZ288fgkcpkZ cut]# tail -5 string.txt 8063952 冰川里的哈密瓜 职员 北京市 90后已婚小鲜肉 406 1 1 1438684854 7004053 可乐的厨房 互联网 北京市 90后幸福小咖 717 1 1 1438684854 8658245 蛋包饭喵喵 编辑 北京市 90后北京菇凉 465 1 1 1438684854 8427541 爱学习的牛妈 自由职业 安徽省 崇尚自由的幸福妈咪 466 1 1 1438684855 8724635 四毛的娘亲 全职妈妈 河南省 80后文艺娘亲 467 1 1 1438684856 [root@iZ288fgkcpkZ cut]#
取出id
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b -7 8063952 7004053 8658245 8427541 8724635 [root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 1-7 8063952 7004053 8658245 8427541 8724635 [root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 7,6,5,1-4 8063952 7004053 8658245 8427541 8724635 [root@iZ288fgkcpkZ cut]#
需要说下-n
n 只取出第n个字节/字符/字段
n- 取出第n个字节/字符/字段(包括n)到行尾
-n 取出第一个字节/字符/字段到第n个字节/字符/字段(包括n)
n-m 取出第n个字节/字符/字段(包括n)到第m个字节/字符/字段(包括m)
n,m 取出第n个字节/字符/字段,取出第m个字节/字符/字段
为什么上面最后一个列子并不是按照我写的顺序取出来的? 因为会先将其排序
取出昵称第一个字符
[root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 9,10,11 冰 可 蛋 爱 四 [root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -b 9,11,10 冰 可 蛋 爱 四 [root@iZ288fgkcpkZ cut]# tail -5 string.txt | cut -c 9 冰 可 蛋 爱 四 [root@iZ288fgkcpkZ cut]#
取出整个昵称呢?
[root@iZ288fgkcpkZ cut]# tail -5 string.txt |cut -f 2 冰川里的哈密瓜 可乐的厨房 蛋包饭喵喵 爱学习的牛妈 四毛的娘亲 [root@iZ288fgkcpkZ cut]# tail -5 string.txt| sed 's/\t/\s/g' |cut -d \s -f 2 冰川里的哈密瓜 可乐的厨房 蛋包饭喵喵 爱学习的牛妈 四毛的娘亲 [root@iZ288fgkcpkZ cut]#
如果指定了分割符,但是文本中有不包含分割符的行呢?
修改文本
[root@iZ288fgkcpkZ cut]# tail -5 string.txt 7004053 可乐的厨房 互联网 北京市 90后幸福小咖 717 1 1 1438684854 8658245 蛋包饭喵喵 编辑 北京市 90后北京菇凉 465 1 1 1438684854 8427541 爱学习的牛妈 自由职业 安徽省 崇尚自由的幸福妈咪 466 1 1 1438684855 8724635 四毛的娘亲 全职妈妈 河南省 80后文艺娘亲 467 1 1 1438684856 8523728亮晶晶妈全职妈妈广东省70后幸福宝妈1318111438684854 [root@iZ288fgkcpkZ cut]#
还是取出昵称列,用-s可以将不包含分割符的行排除出去
[root@iZ288fgkcpkZ cut]# tail -5 string.txt| cut -f 2 可乐的厨房 蛋包饭喵喵 爱学习的牛妈 四毛的娘亲 8523728亮晶晶妈全职妈妈广东省70后幸福宝妈1318111438684854 [root@iZ288fgkcpkZ cut]# tail -5 string.txt| sed 's/\t/\s/g' |cut -d \s -f 2 可乐的厨房 蛋包饭喵喵 爱学习的牛妈 四毛的娘亲 8523728亮晶晶妈全职妈妈广东省70后幸福宝妈1318111438684854 [root@iZ288fgkcpkZ cut]# tail -5 string.txt| sed 's/\t/\s/g' |cut -sd \s -f 2 可乐的厨房 蛋包饭喵喵 爱学习的牛妈 四毛的娘亲 [root@iZ288fgkcpkZ cut]#
2015-09-21 12:02:28
相关文章推荐
- Android基础入门教程——2.4.4 ListView的焦点问题
- JavaScript验证Email(3种方法)
- 关于android 百度地图离线包的调用问题
- 项目____因为引用Bootstrap导致的格式被覆盖
- Socket模型详解(转),有完成端口链接
- HTTPS那些事(一)HTTPS原理(转自果壳)
- 脚本中实现Ansible的playbook的方法
- Virtualbox 虚拟机 inaccessible 问题解决方法
- Hihocoder 1228 Mission Impossible 6
- Linux 时区变化
- 黑马程序员——设计模式——装饰、单例、模版方法
- win8改win7
- java list去重
- 在Qt Creator中配置QNX编译工具链
- Net Beans中表格的增删改查
- FCKEditor文件上传提示信息的汉化
- App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. 解决方案
- js常用插件
- 基于jsp+servlet实现的简单博客系统实例(附源码)
- 从刷票了解获得客户端IP的方法