Manual pages › BSD versions of commands (1B)
tr(1B)
translate characters
From the original Amiga UNIX 2.1 manual. Some things it mentions may not be in this release.
Also by this name: tr(1), General commands · tr-original(1), General commands
NAME
tr - translate characters
SYNOPSIS
/usr/ucb/tr [ -cds ] [ string1 [ string2 ] ]
DESCRIPTION
tr copies the standard input to the standard output with
substitution or deletion of selected characters. The argu-
ments string1 and string2 are considered sets of characters.
Any input character found in string1 is mapped into the
character in the corresponding position within string2.
When string2 is short, it is padded to the length of string1
by duplicating its last character. In either string the
notation:
a-b
denotes a range of characters from a to b in increasing
ASCII order. The character \, followed by 1, 2 or 3 octal
digits stands for the character whose ASCII code is given by
those digits. As with the shell, the escape character \,
followed by any other character, escapes any special meaning
for that character.
OPTIONS
Any combination of the options -c, -d, or -s may be used:
-c Complement the set of characters in string1 with respect to the universe of characters whose ASCII codes are 01 through 0377 octal.
-d Delete all input characters in string1.
-s Squeeze all strings of repeated output characters that are in string2 to single characters.
EXAMPLE
The following example creates a list of all the words in filename1 one per line in filename2, where a word is taken to be a maximal string of alphabetics. The second string is quoted to protect `\' from the shell. 012 is the ASCII code for NEWLINE.
tr -cs A-Za-z '\012' <filename1>filename2
SEE ALSO
ed(1) in the User's Reference Manual. ascii(5) in the System Administrator's Reference Manual.
NOTES
Will not handle ASCII NUL in string1 or string2. tr always deletes NUL from input.