不知道写的对不对,反正执行成功了。没事就瞎作呗!先写下留存,以后等技术好了再改正。
文章中涉及到命令和具体参数可参考linux命令大全www.linuxcool.com
tr命令用于替换文本中的字符
这篇文章用到的知识点有 stat命令、cat命令、输入重定向、输出重定向、运算符&&、任意门(管道符)
查看file文件时间戳 并将其输出重定向至file文件 然后查看其内容
示例一
[root@linuxprobe ~]# stat file > file && cat file
File: ‘file’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd01h/64769d Inode: 71328755 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2019-05-01 21:31:31.332754918 +0800
Modify: 2019-05-01 21:32:28.532751754 +0800
Change: 2019-05-01 21:32:28.532751754 +0800
Birth: -
将file文件内容中的小写字母全部替换成大写字母 并输出到file1(已存在)文件中
并查看file1文件
示例二
[root@linuxprobe ~]# tr [a-z] [A-Z] < file > file1 && cat file1
FILE: ‘FILE’
SIZE: 0 BLOCKS: 0 IO BLOCK: 4096 REGULAR EMPTY FILE
DEVICE: FD01H/64769D INODE: 71328755 LINKS: 1
ACCESS: (0644/-RW-R--R--) UID: ( 0/ ROOT) GID: ( 0/ ROOT)
CONTEXT: UNCONFINED_U:OBJECT_R:ADMIN_HOME_T:S0
ACCESS: 2019-05-01 21:31:31.332754918 +0800
MODIFY: 2019-05-01 21:32:28.532751754 +0800
CHANGE: 2019-05-01 21:32:28.532751754 +0800
BIRTH: -
用管道符命令同样
示例三
[root@linuxprobe ~]# cat file | tr [a-z] [A-Z] > file1 && cat file1
FILE: ‘FILE’
SIZE: 0 BLOCKS: 0 IO BLOCK: 4096 REGULAR EMPTY FILE
DEVICE: FD01H/64769D INODE: 71328755 LINKS: 1
ACCESS: (0644/-RW-R--R--) UID: ( 0/ ROOT) GID: ( 0/ ROOT)
CONTEXT: UNCONFINED_U:OBJECT_R:ADMIN_HOME_T:S0
ACCESS: 2019-05-01 21:31:31.332754918 +0800
MODIFY: 2019-05-01 21:32:28.532751754 +0800
CHANGE: 2019-05-01 21:32:28.532751754 +0800
BIRTH: -
-d参数是删除字符串中出现的字符
本例是删除file文件中的小写字母 并重定向到file1文件然后 查看file1文件
示例四
[root@linuxprobe ~]# tr -d [a-z] < file > file1 && cat file1
F: ‘’
S: 0 B: 0 IO B: 4096
D: 01/64769 I: 71328755 L: 1
A: (0644/------) U: ( 0/ ) G: ( 0/ )
C: _:_:__:0
A: 2019-05-01 21:31:31.332754918 +0800
M: 2019-05-01 21:32:28.532751754 +0800
C: 2019-05-01 21:32:28.532751754 +0800
B: -
管道符一样可以这里就不作演示了。
可以删除里面的数字
示例五
[root@linuxprobe ~]# tr -d [0-9] < file > file1 && cat file1
File: ‘file’
Size: Blocks: IO Block: regular empty file
Device: fdh/d Inode: Links:
Access: (/-rw-r--r--) Uid: ( / root) Gid: ( / root)
Context: unconfined_u:object_r:admin_home_t:s
Access: -- ::. +
Modify: -- ::. +
Change: -- ::. +
Birth: -
也可以挑数字删除例如:
示例六
[root@linuxprobe ~]# tr -d [1,2,3,5] < file > file1 && cat file1
File: ‘file’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd0h/64769d Inode: 787 Links:
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 09-0-0 ::.7498 +0800
Modify: 09-0-0 ::8.774 +0800
Change: 09-0-0 ::8.774 +0800
Birth: -
可以挑字母
示例七
[root@linuxprobe ~]# tr -d [a,c,e,s] < file > file1 && cat file1
Fil: ‘fil’
Siz: 0 Blok: 0 IO Blok: 4096 rgulr mpty fil
Dvi: fd01h/64769d Inod: 71328755 Link: 1
A: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Contxt: unonfind_u:objt_r:dmin_hom_t:0
A: 2019-05-01 21:31:31.332754918 +0800
Modify: 2019-05-01 21:32:28.532751754 +0800
Chng: 2019-05-01 21:32:28.532751754 +0800
Birth: -
甚至可以这么玩
示例八
[root@linuxprobe ~]# tr -d [a,c,e,s,1,2,3,4,/,:,-] < file > file1 && cat file1
il ‘fil’
iz lok lok rgulr mpty fil
vi fdhd nod ink
(rwrr) id ( root) id ( root)
ontxt unonfind_uobjt_rdmin_hom_t
+
odify +
hng +
irth
这家伙,贫穷限制了我的想象力啊。亲测()不可。这又勾起我无限的学习欲啊!
愿我们共同进步!