.Dd January 16, 2015 .Dt TR 1 sbase\-VERSION .Sh NAME .Nm tr .Nd translate characters .Sh SYNOPSIS .Nm tr .Op Fl c | Fl C .Op Fl sd .Ar set1 set2 .Sh DESCRIPTION .Nm matches characters from stdin and performs translations to stdout. .Sh OPTIONS .Bl -tag -width Ds .It Fl c | Fl C Match to .Ar set1 complement. .It Fl d Delete characters matching .Ar set1 . .It Fl s Squeeze repeated characters matching .Ar set1 or .Ar set2 if -d is set. .El .Sh SET .Bl -tag -width Ds .It Literal 'c' .It Escape sequence '\ec' \e\e, \ea, \eb, \ef, \en, \er, \et, \ev .It Range 'c-d' .It Repeat '[c*n]' Only in .Ar set2 . If n = 0 or left out, set n to length of .Ar set1 . .It Character class '[:class:]' See .Xr wctype 3 . .El .Sh TRANSLATION If no options are specified, .Nm translates from .Ar set1 to .Ar set2 by index or character class. .Pp If .Ar set2 is shorter than .Ar set1 , overflowing characters translate to the last character in .Ar set2 . .Sh EXIT STATUS .Bl -tag -width Ds .It 0 Input processed successfully. .It 1 An error occurred. .El .Sh SEE ALSO .Xr sed 1 , .Xr awk 1 , .Xr utf8 7 .Sh STANDARDS The .Nm utility is compliant with the .St -p1003.1-2008 specification except from equivalence classes.