tr工具
Tr 用于字符转换,替换和删除用法一:命令的执行结果交给tr处理,str1用于查询,str2用于转换处理Command | tr ‘str1’ ‘str2’用法二:tr处理的内容来自文件,< 标准输入Tr ‘str1’ ‘str2’ < filename用法三:匹配文件中的str1进行相应的操作,如删除操作tr option ‘str1’ < filename-d 删除字符串中所有输入字符
-s 删除所有重复出现字符序列,只保留第一个:即将重复出现字符压缩为一个字符串(1)替换功能
[root@localhost tmp]# cat /tmp/passwd | head | tee 1.txtroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin[root@localhost tmp]# cat 1.txt root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin[root@localhost tmp]# tr 'a-z' 'A-Z' < 1.txt 将所有的小写字母替换成大写字母ROOT:X:0:0:ROOT:/ROOT:/BIN/BASHBIN:X:1:1:BIN:/BIN:/SBIN/NOLOGINDAEMON:X:2:2:DAEMON:/SBIN:/SBIN/NOLOGINADM:X:3:4:ADM:/VAR/ADM:/SBIN/NOLOGINLP:X:4:7:LP:/VAR/SPOOL/LPD:/SBIN/NOLOGINSYNC:X:5:0:SYNC:/SBIN:/BIN/SYNCSHUTDOWN:X:6:0:SHUTDOWN:/SBIN:/SBIN/SHUTDOWNHALT:X:7:0:HALT:/SBIN:/SBIN/HALTMAIL:X:8:12:MAIL:/VAR/SPOOL/MAIL:/SBIN/NOLOGINOPERATOR:X:11:0:OPERATOR:/ROOT:/SBIN/NOLOGIN[root@localhost tmp]#[root@localhost tmp]# cat 1.txt
root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin[root@localhost tmp]# tr ':/' '#' < 1.txt tr是一个字符一个字符的替换,将:或者/替换成#root#x#0#0#root##root##bin#bashbin#x#1#1#bin##bin##sbin#nologindaemon#x#2#2#daemon##sbin##sbin#nologinadm#x#3#4#adm##var#adm##sbin#nologinlp#x#4#7#lp##var#spool#lpd##sbin#nologinsync#x#5#0#sync##sbin##bin#syncshutdown#x#6#0#shutdown##sbin##sbin#shutdownhalt#x#7#0#halt##sbin##sbin#haltmail#x#8#12#mail##var#spool#mail##sbin#nologinoperator#x#11#0#operator##root##sbin#nologin[root@localhost tmp]# tr ':,/' '#' < 1.txt
root#x#0#0#root##root##bin#bashbin#x#1#1#bin##bin##sbin#nologindaemon#x#2#2#daemon##sbin##sbin#nologinadm#x#3#4#adm##var#adm##sbin#nologinlp#x#4#7#lp##var#spool#lpd##sbin#nologinsync#x#5#0#sync##sbin##bin#syncshutdown#x#6#0#shutdown##sbin##sbin#shutdownhalt#x#7#0#halt##sbin##sbin#haltmail#x#8#12#mail##var#spool#mail##sbin#nologinoperator#x#11#0#operator##root##sbin#nologin空格也是一个字符
[root@localhost tmp]# cat 1.txt root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon :x :2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin[root@localhost tmp]# tr ': /' '#' < 1.txtroot#x#0#0#root##root##bin#bashbin#x#1#1#bin##bin##sbin#nologindaemon##x##2#2#daemon##sbin##sbin#nologinadm#x#3#4#adm##var#adm##sbin#nologinlp#x#4#7#lp##var#spool#lpd##sbin#nologinsync#x#5#0#sync##sbin##bin#syncshutdown#x#6#0#shutdown##sbin##sbin#shutdownhalt#x#7#0#halt##sbin##sbin#haltmail#x#8#12#mail##var#spool#mail##sbin#nologinoperator#x#11#0#operator##root##sbin#nologin[root@localhost tmp]#‘,’也是可以替换的一个字符
[root@localhost tmp]# cat 1.txt root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon, :x :2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin[root@localhost tmp]# tr ':,/' '#' < 1.txtroot#x#0#0#root##root##bin#bashbin#x#1#1#bin##bin##sbin#nologindaemon# #x #2#2#daemon##sbin##sbin#nologinadm#x#3#4#adm##var#adm##sbin#nologinlp#x#4#7#lp##var#spool#lpd##sbin#nologinsync#x#5#0#sync##sbin##bin#syncshutdown#x#6#0#shutdown##sbin##sbin#shutdownhalt#x#7#0#halt##sbin##sbin#haltmail#x#8#12#mail##var#spool#mail##sbin#nologinoperator#x#11#0#operator##root##sbin#nologin[root@localhost tmp]#(2)删除字符
删除所有的小写字符[root@localhost tmp]# cat 1.txt root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon, :x :2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin[root@localhost tmp]# tr -d 'a-z' < 1.txt::0:0::/://::1:1::/://, : :2:2::/://::3:4:://://::4:7::///://::5:0::/://::6:0::/://::7:0::/://::8:12::///://::11:0::/://[root@localhost tmp]# (3)压缩功能删除连续的小写字母[root@localhost tmp]# cat 1.txtroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon, :x :2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologinaaaabbbbbaaacccabcabc[root@localhost tmp]# [root@localhost tmp]#[root@localhost tmp]# tr -s 'a-z' < 1.txt
rot:x:0:0:rot:/rot:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon, :x :2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spol/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spol/mail:/sbin/nologinoperator:x:11:0:operator:/rot:/sbin/nologinabacabcabc[root@localhost tmp]#
精彩评论