Skip to the content.

Home / cs-notes / Operating System / Linux / Commands / tr

NAME
       tr - translate or delete characters

SYNOPSIS
       tr [OPTION]... SET1 [SET2]

DESCRIPTION
       Translate, squeeze, and/or delete characters from standard input, writing 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 sequence of a repeated character that is listed in the last specified SET, with a single occur‐
              rence of that character

       -t, --truncate-set1
              first truncate SET1 to length of SET2
       SETs are specified as strings of characters.  Most represent themselves.  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 the last specified SET, and occurs after translation or
       deletion.

tr [:lower:] [:upper:]