Name
tr — stdin stdout - file -- opt --help --version
Synopsis
tr [options
]charset1
[charset2
]
The tr
command performs
some simple, useful translations of one set of characters into
another. For example, to capitalize everything in a file:
$ cat myfile This is a very wonderful file. $ cat myfile | tr 'a-z' 'A-Z' THIS IS A VERY WONDERFUL FILE.
or to change all vowels into asterisks:
$ cat myfile | tr aeiouAEIOU '*' Th*s *s * v*ry w*nd*rf*l f*l*.
or to delete all vowels:
$ cat myfile | tr -d aeiouAEIOU Ths s vry wndrfl fl.
As a very practical example, delete all carriage returns from
a DOS text file so it’s more compatible with Linux text utilities
like grep
:
$ tr -d '\r' < dosfile > newfile
tr
translates the first
character in charset1
into the first
character in charset2
, the second into
the second, the third into the third, etc. If the length of
charset1
is N
,
only the first N
characters in
charset2
are used. (If
charset1
is longer than
charset2
, see the -t
option.)
Character sets can have the following forms.
Form |
Meaning |
---|---|
|
The sequence of characters A, B, C, D. |
|
The range of characters from A to B. |
|
y repetitions of the character x. |
|
The same character
classes ( |
tr
also understands the
escape characters “\a” (^G
= ring
bell), “\b” (^H
= backspace),
“\f” (^L
= formfeed), “\n”
(^J
= newline), “\r” (^M
= return), “\t” (^I
= tab), and “\v” (^K
= vertical tab) accepted by printf
(see Screen Output), as well ...
Get Linux Pocket Guide, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.