一天一个shell命令 linux文本操作系列-tac,rev命令详解
说明:
tac和rev没有必然联系,唯一相同的是,他们是“反派”。tac其实是cat的反写,cat正常输出,那tac就倒着输出,不过从行的最后一行输出,那rev呢?rev是每行的最后一个字母到第一个字母倒序输出。
简单实例
tac命令
文件过滤分割与合并
tac命令用于将文件已行为单位的反序输出,即第一行最后显示,最后一行先显示。
语法
tac(选项)(参数)
选项
-a或——append:将内容追加到文件的末尾;
-i或——ignore-interrupts:忽略中断信号。
参数
文件列表:指定要保存内容的文件列表。
tactac.txt
tac帮助文档将从最后一行输出
tac帮助文档每行倒着输出,但是从第一行到最后一行输出
查看帮助文档:
tachelp
用法:tac[选项]...[文件]...
将每个指定文件按行倒置并写到标准输出。
如果不指定文件,或文件为"-",则从标准输入读取数据。
长选项必须使用的参数对于短选项时也是必需使用的。
-b,--before 在行前而非行尾添加分隔标志
-r,--regex 将分隔标志视作正则表达式来解析
-s,--separator=字符串 使用指定字符串代替换行作为分隔标志
--help 显示此帮助信息并退出
--version 显示版本信息并退出
rev
rev命令将文件中的每行内容以字符为单位反序输出,即第一个字符最后输出,最后一个字符最先输出,依次类推。
语法
rev(参数)
参数
文件:指定要反序显示内容的文件。
实例revhelp
Usage:rev[options][file...]
Options:
-V,--version outputversioninformationandexit
-h,--help displaythishelpandexit
[root@localhost~]#catiptables.bak #Generatedbyiptables-savev1.3.5onThuDec2621:25:152013 *filter :INPUTDROP[48113:2690676] :FORWARDaccept[0:0] :OUTPUTACCEPT[3381959:1818595115] -AINPUT-ilo-jACCEPT -AINPUT-ptcp-mtcp--dport22-jACCEPT -AINPUT-ptcp-mtcp--dport80-jACCEPT -AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT -AINPUT-picmp-jACCEPT -AOUTPUT-olo-jACCEPT COMMIT #CompletedonThuDec2621:25:152013 [root@localhost~]#reviptables.bak 310251:52:1262ceDuhTno5.3.1vevas-selbatpiybdetareneG# retlif* ]6760962:31184[PORDTUPNI: ]0:0[TPECCADRAWROF: ]5115958181:9591833[TPECCATUPTUO: TPECCAj-oli-TUPNIA- TPECCAj-22tropd--pctm-pctp-TUPNIA- TPECCAj-08tropd--pctm-pctp-TUPNIA- TPECCAj-DEHSILBATSE,DETALERetats--etatsm-TUPNIA- TPECCAj-pmcip-TUPNIA- TPECCAj-olo-TUPTUOA- TIMMOC 310251:52:1262ceDuhTnodetelpmoC#
这两个命令比较简单,写到一起了。以后类似这种简单命令可能不会再写。因为有朋友问起,基本命令的事,打算起笔,又有点索然无味的感觉。