Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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 (C) 2025 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.6		 January 2025				 TR(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gtr&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help