dwww Home | Manual pages | Find package

TR(1)                            User Commands                           TR(1)

NAME
       tr - translate or delete characters

SYNOPSIS
       tr [OPTION]... STRING1 [STRING2]

DESCRIPTION
       Translate, squeeze, and/or delete characters from standard input, writ-
       ing  to standard output.  STRING1 and STRING2 specify arrays of charac-
       ters ARRAY1 and ARRAY2 that control the action.

       -c, -C, --complement
              use the complement of ARRAY1

       -d, --delete
              delete characters in ARRAY1, do not translate

       -s, --squeeze-repeats
              replace each sequence of a repeated character that is listed  in
              the last specified ARRAY, with a single occurrence of that char-
              acter

       -t, --truncate-set1
              first truncate ARRAY1 to length of ARRAY2

       --help display this help and exit

       --version
              output version information and exit

       ARRAYs  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 ARRAY2, copies of CHAR until length of ARRAY1

       [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 STRING1 and STRING2  ap-
       pear.   -t is only significant when translating.  ARRAY2 is extended to
       length of ARRAY1 by repeating its last character as necessary.   Excess
       characters of ARRAY2 are ignored.  Character classes expand in unspeci-
       fied  order;  while translating, [:lower:] and [:upper:] may be used in
       pairs to specify case conversion.  Squeezing occurs  after  translation
       or deletion.

BUGS
       Full  support  is available only for safe single-byte locales, in which
       every possible input byte represents a single character.  The C  locale
       is  safe  in  GNU  systems, so you can avoid this issue in the shell by
       running LC_ALL=C tr instead of plain tr.

AUTHOR
       Written by Jim Meyering.

REPORTING BUGS
       GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
       Report any translation bugs to <https://translationproject.org/team/>

COPYRIGHT
       Copyright © 2023 Free Software Foundation, Inc.   License  GPLv3+:  GNU
       GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
       This  is  free  software:  you  are free to change and redistribute it.
       There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
       Full documentation <https://www.gnu.org/software/coreutils/tr>
       or available locally via: info '(coreutils) tr invocation'

GNU coreutils 9.4                  June 2025                             TR(1)

Generated by dwww version 1.16 on Mon Jul 13 07:42:54 CEST 2026.