Linux中tr命令说明
的有关信息介绍如下:tr用来从标准输入中通过替换或删除操作进行字符转换。tr主要用于删除文件中控制字符或进行字符转换。使用tr时要转换两个字符串:字符串1用于查询,字符串2用于处理各种转换。tr刚执行时,字符串1中的字符被映射到字符串2中的字符,然后转换操作开始。带有最常用选项的tr命令格式为:tr -c -d -s ["string1_to_translate_from"] ["string2_to_translate_to"] < input-file这里:-c 用字符串1中字符集的补集替换此字符集,要求字符集为ASCII。-d 删除字符串1中所有输入字符。-s 删除所有重复出现字符序列,只保留第一个;即将重复出现字符串压缩为一个字符串。input-file是转换文件名。虽然可以使用其他格式输入,但这种格式最常用。
字符范围说明指定字符串1或字符串2的内容时,只能使用单字符或字符串范围或列表。[a-z] a-z内的字符组成的字符串。[A-Z] A-Z内的字符组成的字符串。 数字串。\octal 一个三位的八进制数,对应有效的ASCII字符。[O*n] 表示字符O重复出现指定次数n。因此[O*2]匹配OO的字符串。tr中特定控制字符的不同表达方式速记符含义八进制方式\a Ctrl-G铃声\007\b Ctrl-H退格符\010\f Ctrl-L走行换页\014\n Ctrl-J新行\012\r Ctrl-M回车\015\t Ctrl-Itab键\011\v Ctrl-X\030
找一个文件,内容中包含大小写,用这个文件作为演示样例。
这里使用.bash_profile文件复制为bash_profile1作为演示文件。
查看bash_profile文件的内容,里面包含大小写字母
下面用bash_profile1文件作为样例介绍将大写字母转换为小写字母
命令语法是tr+‘文件中原有的字符’ ‘要替换成的字符’< 要替换的文件名
这里具体的命令就是
tr 'A-Z' 'a-z' <./bash_profile1
'A-Z' 是替换前文件中的字符
'a-z'是替换后文件中的字符
./bash_profile1 是要替换的文件名
这里看到转换后,都是小写字母了
如果以上经验帮到您,麻烦在左下角给点个赞,谢谢!
可以使用命令tr 'a-z' 'A-Z'<./bash_profile1 将当前目录下的bash_profile1文件中的所有小写字母,转换成大写字母。
下面是tr命令的manual,you can read it for reference.
TR(1) User Commands TR(1)
NAME
tr - translate or delete characters
SYNOPSIS
tr [OPTION]... SET1 [SET2]
DESCRIPTION
Translate, squeeze, and/or delete characters from standard input, writ-
ing to standard output.
-c, -C, --complement
use the complement of SET1
-d, --delete
delete characters in SET1, do not translate
-s, --squeeze-repeats
replace each input sequence of a repeated character that is
listed in SET1 with a single occurrence of that character
-t, --truncate-set1
first truncate SET1 to length of SET2
--help display this help and exit
--version
output version information and exit
SETs are specified as strings of characters. Most represent them-
selves. Interpreted sequences are:
\NNN character with octal value NNN (1 to 3 octal digits)
\\ backslash
\a audible BEL
\b backspace
\f form feed
\n new line
\r return
\t horizontal tab
\v vertical tab
CHAR1-CHAR2
all characters from CHAR1 to CHAR2 in ascending order
[CHAR*]
in SET2, copies of CHAR until length of SET1
[CHAR*REPEAT]
REPEAT copies of CHAR, REPEAT octal if starting with 0
[:alnum:]
all letters and digits
[:alpha:]
all letters
[:blank:]
all horizontal whitespace
[:cntrl:]
all control characters
[:digit:]
all digits
[:graph:]
all printable characters, not including space
[:lower:]
all lower case letters
[:print:]
all printable characters, including space
[:punct:]
all punctuation characters
[:space:]
all horizontal or vertical whitespace
[:upper:]
all upper case letters
[:xdigit:]
all hexadecimal digits
[=CHAR=]
all characters which are equivalent to CHAR
Translation occurs if -d is not given and both SET1 and SET2 appear.
-t may be used only when translating. SET2 is extended to length of
SET1 by repeating its last character as necessary. Excess characters
of SET2 are ignored. Only [:lower:] and [:upper:] are guaranteed to
expand in ascending order; used in SET2 while translating, they may
only be used in pairs to specify case conversion. -s uses SET1 if not
translating nor deleting; else squeezing uses SET2 and occurs after
translation or deletion.
AUTHOR
Written by Jim Meyering.
REPORTING BUGS
Report tr bugs to bug-coreutils@gnu.org
GNU coreutils home page:
General help using GNU software:
Report tr translation bugs to
COPYRIGHT
Copyright © 2010 Free Software Foundation, Inc. License GPLv3+: GNU
GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
SEE ALSO
The full documentation for tr is maintained as a Texinfo manual. If
the info and tr programs are properly installed at your site, the com-
mand
info coreutils 'tr invocation'
should give you access to the complete manual.
GNU coreutils 8.4 June 2010 TR(1)