tr命令使用

tr

translate or delete characters

  • 命令:
    tr [OPTION]... SET1 [SET2]
  • 参数:
    -c,--complement:反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换
    -d,--delete:删除指令字符
    -s,--squeeze-repeats:缩减连续重复的字符成指定的单个字符
    -t, --truncate-set1:削减 SET1 指定范围,使之与 SET2 设定长度相等

用法1:把输入的数据当中的字符,凡是在SET1定义范围内出现的,通通对位转换为SET2出现的字符
 tr SET1 SET2 < /PATH/FROM/SOMEFILE
示例:

[root@centos7 test]# cat tst.txt
aaaa
bbbb
cccc
dddd
[root@centos7 test]# tr [a-z] [A-Z] < ./tst.txt
AAAA
BBBB
CCCC
DDDD

练习:将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out中

[root@centos7 ~]# cat /etc/issue
\S
Kernel \r on an \m

[root@centos7 ~]# cat /tmp/issue.out
cat: /tmp/issue.out: No such file or directory
[root@centos7 ~]# cat /etc/issue | tr '[:lower:]' '[:upper]' > /tmp/issue.out
[root@centos7 ~]# cat /tmp/issue.out
\S
Kp]]p] \] ]] [] \]

用法2:删除字符
示例:
 tr -d SET1 < /PATH/FROM/SOMEFILE

>[root@centos7 test]# cat tst.txt
>abcdefg
>bbbb
>cccc
>dddd
>[root@centos7 test]# tr -d a < ./tst.txt
>bcdefg
>bbbb
>cccc
>dddd

注意:不修改原文件

你可能感兴趣的:(tr命令使用)