Tr en informatique : définition, rôle et exemples concrets

" tr " est une commande Unix à ne pas confondre avec la balise " tr " en langage HTML qui permet de définir une ligne dans un tableau. Elle prend en charge certains automatismes propres à l'affichage et la mise en page des caractères saisis. Découvrez toutes les spécificités de cette commande à la fois pratique et simple à maîtriser.

Rôle de la commande « tr » dans Unix

La commande « tr » est l’abréviation de « translate ». Employée dans un environnement tel que GNU ou Linux, elle permet la conversion et la suppression de caractères. Ces opérations peuvent aussi bien intervenir dans un flux de données spécifiques que dans un fichier en cours de modification. Pour qu’elle fonctionne, il est nécessaire que les caractères parviennent depuis l’entrée standard. Par exemple, dans le cas de Linux, il s’agit de l’entrée « stdin ».

On se sert de cette commande Unix pour générer des automatismes par rapport à des situations précises. Pour l’utilisateur, cela offre un gain de temps considérable, car elle permet de réitérer une action. Cela passe autant par la conversion de chaînes de caractères que par leur substitution. Concrètement, la commande « tr » s’emploie majoritairement pour :

  • la transformation d’un paragraphe ;
  • la modification d’un texte dans son entièreté ;
  • l’application d’une casse ou d’un masque spécifique ;
  • la réduction des répétitions de caractères à une seule unité ;
  • l’affichage des caractères imprimables.

Afin de pouvoir disposer des nombreuses subtilités de la commande « tr », les masques d’application fonctionnent grâce à des mots-clefs. Par exemple, « upper » pour les caractères majuscules, ou encore « alnum » pour les lettres et les chiffres. À noter que leur usage fonctionne aussi bien en entrée qu’en sortie.

Il existe d’autres commandes Unix similaires à « tr ». C’est notamment le cas d’« unexpand » pour l’ajout d’une tabulation en début de ligne à partir d’un espace, ou d’« expand » pour la conversion d’une tabulation en un ou plusieurs espaces. On retrouve également les commandes « grep », « sed » et « awk ». Toutefois, celles-ci s’avèrent plus complexes à maîtriser ou trop limitées pour bénéficier d’un outil de modifications automatiques aussi performant que « tr ».

Exemples d’utilisation de la commande « tr »

Les champs d’application de la commande Unix « tr » sont donc nombreux et s’adaptent à des demandes disparates. Les exemples suivants sont représentatifs de son potentiel dans les fonctions d’administration, de programmation et de traitement des codes :

  • la substitution de caractères : lorsqu’on veut remplacer les lettres e, f, g et h par p, q, r et s, il faut entrer : tr 'efgh' 'pqrs' < fichier ou, éventuellement, tr 'e-h' 'pqrs' < fichier ;
  • la réduction de plusieurs espaces blancs ou vides par une seule unité : tr -s ’ ’ < fichier ;
  • la réalisation d’un saut de ligne avec un caractère, comme le double point : tr ':' '\012' < fichier ;
  • le remplacement de lettres minuscules par des lettres majuscules : tr 'a-z' 'A-Z' < fichier.

Langages