码迷,mamicode.com
首页 > 系统相关 > 详细

Linux [文本处理]

时间:2014-07-28 15:23:23      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:使用   os   文件   for   linux   python   应用   window   

cut -- 将行根据需求分成指定的片段

常用参数:

-d 以。。。为分割符   -d: 以:分割行(类似于python中的split)

-f 得到分割后的某个列  -f1-3 得到分割后的第1个到第3个列 (即1,2,3列,这里面是从1开始的,而不是0)

-c 指定位置字符 -c1 得到行的第一个字符

 

grep -- 查找文本内容

常用参数:

-i 忽略大小写

-n 显示行数

-An 显示查找到的字符的后(After)n行

-Bn 显示查找到的字符的前(Before)n行

-v 显示不含有该字符的行

 

例子:

grep yechengzhou /特长/passwd | cut -d: f6 (得到yechengzhou用户的家目录)

 

wc -- 统计文本信息

-l 行

-w 单词

-m 字符

-c 字节

不加参数  wc filename 得到结果为

行数 单词数 字符数 文件名

 

 

sort -- 对文本内容进行排序

默认 根据首字母排序

参数:

-r 倒序

-n 指定基于数字进行排序

-f 忽略大小写

-u 删除重复行  (or find | uniq 只能删除相邻的重复行)

-t c 根据c为分隔符将行分割成列,并将列排序

 

diff -- 比较两个文件的区别

-i 忽略大小写

-b 忽略空格数量的变化

-u 统一显示比较信息(一般用于生成patch)

 

tr -- 对文本进行处理, 只针对标准输出,如果要修改文件内容需要重定向

tr -d "TMD" < filename 删除文本中的TMD 输出, 文件内容不变

tr ‘abc‘ ‘ABC‘ < filename 将文件中的小写a,b,c替换成A,B,C, 文件内容不变

-s , 删除所有 str_from 重复出现字符序列,只保留一个 ,即重复字符串压缩为一个 
【一个很经典的应用就是把不规律的空格缩减为一个空格: tr -s ‘ ‘ filename】 

 

sed -- 搜索替换,使用正则表达式处理, 替换后标准输出

sed 正则 文件

例子:

sed "1,50s/linux/unix/g" filename 将filename中的1-50行的所有linux替换成Unix (/g代表所有, 不加/g只替换第一个)

sed -f sedfile filename根据sedfile中的内容进行sed操作(比如说sedfile 的内容是 "s/linux/unix/g" 那么就是将filename中的所有linux替换成unix)

sed -e "s/linux/unix/g" -e "s/windows/OS/g" filename 同时做多个替换

 

Linux [文本处理],布布扣,bubuko.com

Linux [文本处理]

标签:使用   os   文件   for   linux   python   应用   window   

原文地址:http://www.cnblogs.com/ethanchou/p/3872987.html

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