tr (Unix)

Utilidad de formato de texto Unix
es
Autor(es) original(es)Douglas McIlroy
( Laboratorios Bell de AT&T )
Desarrollador(es)Varios desarrolladores comerciales y de código abierto
Lanzamiento inicialNoviembre de 1973 ; hace 50 años ( 1973-11 )
Repositorio
  • openbsd.su/src/usr.bin/tr/
Escrito endo
Sistema operativoUnix , similar a Unix , Plan 9 , Inferno , OS-9 , MSX-DOS , IBM i
PlataformaMultiplataforma
TipoDominio
Licenciacoreutils : GPLv3+
Plan 9: Licencia MIT

tr es un comando de Unix , Plan 9 , Inferno y sistemas operativos similares a Unix . Es una abreviatura de translate o transliterate , que indica su operación de reemplazar o eliminar caracteres específicos en su conjunto de datos de entrada.

Descripción general

La utilidad lee un flujo de bytes desde su entrada estándar y escribe el resultado en la salida estándar . Como argumentos , toma dos conjuntos de caracteres (generalmente de la misma longitud) y reemplaza las apariciones de los caracteres en el primer conjunto con los elementos correspondientes del segundo conjunto. Por ejemplo,

es 'abcd' 'jkmn'

asigna todos los caracteres a a j , b a k , c a m y d a n .

El conjunto de caracteres se puede abreviar mediante el uso de rangos de caracteres. El ejemplo anterior se podría escribir así:

es 'anuncio' 'jkmn'

En las versiones de POSIXtr compatibles , el conjunto representado por un rango de caracteres depende del orden de intercalación de la configuración regional , por lo que es más seguro evitar rangos de caracteres en scripts que puedan ejecutarse en una configuración regional distinta de aquella en la que se escribieron. Los rangos a menudo se pueden reemplazar con conjuntos de caracteres POSIX como [:alpha:] .

La sbandera hace trque se compriman secuencias de caracteres adyacentes idénticos en su salida en un solo token. Por ejemplo,

tr -s '\n'

reemplaza secuencias de uno o más caracteres de nueva línea con una sola nueva línea.

La dbandera hace trque se eliminen todos los tokens del conjunto de caracteres especificado de su entrada. En este caso, solo se utiliza un único argumento de conjunto de caracteres. El siguiente comando elimina los caracteres de retorno de carro.

tr -d '\r'

La cbandera indica el complemento del primer conjunto de caracteres. La invocación

tr -cd '[:número_de_número:]'

Por lo tanto, elimina todos los caracteres no alfanuméricos.

Implementaciones

La versión original de trfue escrita por Douglas McIlroy y se introdujo en la versión 4 de Unix . [1]

La versión trincluida en GNU coreutils fue escrita por Jim Meyering. [2] El comando está disponible como un paquete separado para Microsoft Windows como parte de la colección UnxUtils de puertos Win32 nativos de utilidades comunes de GNU Unix-like. [3] También está disponible en el shell OS-9 . [4] Un comando también es parte de MSX-DOS2 Tools de ASCII para MSX-DOS versión 2. [5] El comando tr también ha sido portado al sistema operativo IBM i . [6] tr

La mayoría de las versiones de tr, incluidas GNU try Unix clásico tr, funcionan con caracteres de un solo byte y no son compatibles con Unicode . Una excepción es la implementación de Heirloom Toolchest , que proporciona compatibilidad básica con Unicode.

Ruby y Perl también tienen un operador interno tr , que opera de manera análoga. [7] [8] El comando de mapa de cadenas de Tcl es más general, ya que asigna cadenas a cadenas, mientras que tr asigna caracteres a caracteres. [9]

Véase también

Referencias

  1. ^ McIlroy, MD (1987). Un lector de Unix para investigación: extractos anotados del Manual del programador, 1971–1986 (PDF) (Informe técnico). Ciencias de la computación. AT&T Bell Laboratories. 139.
  2. ^ "Tr(1): Traducir/Eliminar carácter - Página del manual de Linux".
  3. ^ "Puertos Win32 nativos de algunas utilidades GNU". unxutils.sourceforge.net .
  4. ^ Paul S. Dayan (1992). El gurú del OS-9 - 1: Los hechos . Galactic Industrial Limited. ISBN 0-9519228-0-7.
  5. ^ Manual del usuario de herramientas MSX-DOS2 de ASCII Corporation
  6. ^ IBM . "Programación Qshell para IBM System i versión 7.2" (PDF) . IBM . Consultado el 5 de septiembre de 2020 .
  7. ^ "tr (String) - APIdock". APIdock . Consultado el 12 de agosto de 2015 .
  8. ^ "tr - perldoc.perl.org". perldoc.perl.org . Consultado el 12 de agosto de 2015 .
  9. ^ "Comandos integrados de Tcl: página del manual de cadenas" . Consultado el 12 de agosto de 2015 .
Obtenido de "https://es.wikipedia.org/w/index.php?title=Tr_(Unix)&oldid=1167045460"