06文本工具简单介绍

在Linux系统中,一个核心理念就是:一切皆文件。正确的对系统中文本的编辑配置与管理是Linux系统得以稳定运行的一个重要大前提。

因此Linux系统中的文件与管理特别重要,下面简单说一下在对文件处理过程中经常用到的一些命令工具。

文本查看命令:cat,tac,rev,more,less

cat [option]…[file]…

-E:显示行结束符$

-n:显示行号

-A:显示所有控制符eg:tab键就显示为 ^I

-b:非空行编号,即空行不显示行号,略过

-s:压缩连续的空行成一行

tac [option]…[file]…

-b, –before 在行前而非行尾添加分隔标志【默认换行】

-r, –regex 将分隔标志视作正则表达式来解析

-s, –separator=字符串 使用指定字符串代替换行作为分隔标志 -s="#"

rev [options] [file …]

reversing the order of characters in every line:将每一行的显示翻转过来

注意这里tac和rev不同的地方是,tac是将整个文档以行为单位翻转,而rev是以每一个字符为单位,在一行的范围内翻转。ABC–>CBA  而tac 是 ABC 【第一行】 123【第二行】 –>123【第一行】ABC【第二行】

more [options] file […]  翻到底自动退出

less [options] file […]  翻到底不会自动退出(man帮助查看就是用的less用法)

head [OPTION]… [FILE]…

-c # :指定获取前#个字节

-n # 或 -# : 指定获取行数

tail [OPTION]… [FILE]…

-c # :指定获取前#个字节

-n # 或 -# : 指定获取行数

-f :跟踪显示文件新追加的内容,常用语日志监控

cut [OPTION]… [FILE]…

-d : 指明分隔符,默认tab  。eg:-d" ",以空格为分割

-f FILEDS: #: 第#个字段 #,#[,#]:离散的多个字段,例如1,3,6

#-#:连续的多个字段, 例如1-6 混合使用:1-3,7

-c按字符切割   cut -c 1-10 anaconda-ks.cfg

–output-delimiter=STRING指定输出分隔符

paste 合并两个文件同行号的列到一行

paste [OPTION]… [FILE]…

-d 分隔符:指定分隔符,默认用TAB

-s : 所有行合成一行显示

paste f1 f2

paste -s f1 f2  先合并成一行,在追加。n个文件就显示n行。

wc [OPTION]… [FILE]…

-c, –bytes    显示  字节数     

-m, –chars    显示  字符数        

-l, –lines    显示  行号

 

sort [OPTION]… [FILE]…  

-r执行反方向(由上至下)整理

-n执行按数字大小整理 默认是按字符排序,即1,11,12…19,2,21…

-f选项忽略(fold)字符串中的字符大小写

-u选项(独特,unique)删除输出中的重复行

uniq[OPTION]… [FILE]…

-c: 显示每行重复出现的次数

-d: 仅显示重复过的行

-u: 仅显示不曾重复的行

【连续且完全相同方为重复】

 

diff foo.conf-brokenfoo.conf-works  

比较两个文件的不同

【【【【【【【【【【【【以上命令均不改变原有文件的内容】】】】】】】】】】】】

—-joker的部落阁

原创文章,作者:joker,如若转载,请注明出处:http://www.178linux.com/56496

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code