Linux学习总结(十八)几个简单的文本处理工具cut sort tr split
1 命令cut
用来截取某一个字段
格式 : cut -d '分隔符' [-cf] n, n为数字,表示第几段
-d:后面跟分隔符,分割符要加单引号
-c:后面接的是第几个字符
-f:后面接的是第几段
那么意思是-c,-f选项二选一
例如: head -3 /etc/passwd |cut -d ':' -f 1
例如 head -3 /etc/passwd |cut -c 1
-c也可以是一个区间
例如 head -3 /etc/passwd |cut -c1-3
-c 也可以单独指定好几个位置的字符
例如 head -3 /etc/passwd |cut -c1,3,4
2 命令sort
用来排序,格式为 sort [-t 分隔符] [-kn1,n2] [-nru],这里n1和n2为数字
-t:后面跟分割符,作用跟cut的-d一样
-n:表示用纯数字排序
-r:表示反向排序
-u:表示去重复
-kn1,n2:表示由n1区间排序到n2区间,可以只写-kn1,即对n1字段排序
sort 不加任何选项表示从首字符向后依次按ASCII码值进行比较,最后按升序输出
例如 head -4 /etc/passwd |sort
-t 指定分隔符,-k指定区域
例如 head -4 /etc/passwd |sort -t ':' -k3 -n
也可以对连续一段区域排序
例如 head -4 /etc/passwd |sort -t ':' -k3,5 -r
3 命令wc
用于统计文档的行数,字符数或词数
-l 统计行数
-m 统计字符数
-w 统计词数
4 命令uniq
用来删除重复的行,前提是需要排序
-c 用来统计重复的行数
我们编写一个test.txt来理解下
5 命令tee
tee 配合管道符使用作用类似于重定向,但比重定向多一个功能,可以把文件写入目标文件时,还可以把它打印出来。
比较下这两句: head -3 /etc/passwd > a.txt
head -3 /etc/passwd |tee b.txt
6 命令 tr
用于替换字符,常用来处理文档中的特殊符号
-d 表示删除某个字符
-s 表示删除重复的字符
举两个例子 ,小写替换大写
head -2 /etc/passwd |tr '[a-z]' '[A-Z]'
替换某一个字符
head -2 /etc/passwd |tr 'o' 'O'
7 命令split
用户切割文档,常用的选项有-b,-l
-b :指定文件大小切割,单位为byte
例如我们把一个3M的文件切割3份
下面我们按行切割下,/etc/passwd 有21行,我们把它按行切割为三份
最新文章
- servlet中的转发和重定向问题
- Orcle 系统表
- HTML5要点_CSS(三)
- poj1185:炮兵阵地(状压dp)
- Hibernate5-课程笔记6
- yum安装memcache,mongo扩展以及python的mysql模块安装
- IOS JavaScriptCore介绍
- matlab练习程序(点云表面法向量)
- HDOJ1287_破译密码
- 有关Math数学运算的js函数
- 557. Reverse Words in a String III
- Ubuntu12.04 挂载exFat格式U盘的方法(转)
- 【EF】解决EF批量操作,Z.EntityFramework.Extensions 过期方案
- C++中cin、cin.get()、cin.getline()、getline()、gets()等函数的用法(转)
- QDU_组队训练(ABEFGHKL)
- apache下用expires_module让浏览器缓存静态文件
- C语言单片机中延时程序的实现
- c# 的默认访问修饰符(转)
- Python3学习实例上手(1)-----模拟登录认证
- POJ 1845-Sumdiv(快速幂取模+整数唯一分解定理+约数和公式+同余模公式)