GNU/Linux >> Tutoriels Linux >  >> Linux

Comment inverser les lignes d'un fichier par caractère sous Linux

Certaines tâches de manipulation ou d'alternance de chaînes peuvent être programmées assez facilement dans des scripts ou dans un langage de programmation. Par exemple, changer la casse d'un texte dans un fichier.

Certaines tâches sont très souvent requises en matière de manipulation de texte. L'une de ces tâches consiste à inverser les lignes d'un fichier. Lorsque nous disons inverser les lignes, cela peut signifier deux choses :inverser l'ordre des lignes dans un fichier ou inverser chaque ligne dans le fichier par caractère.

Dans cet article, nous allons découvrir la commande 'rev' qui traite de l'inversion des lignes dans un fichier par caractère en place.

Commande Rev sous Linux

Le "rév La commande ' sous Linux, qui est disponible par défaut, est utilisée pour inverser les lignes d'un fichier ou saisie en tant qu'entrée standard par l'utilisateur. La commande recherche essentiellement les caractères de fin de ligne ('\n') qui dénotent la fin d'une ligne puis inversent les caractères de la ligne en place.

Ceci est différent des programmes comme 'tac ' qui n'inversent pas les lignes par caractère mais seulement l'ordre des lignes dans le fichier. Exécutez maintenant la commande 'rev' sans aucun argument pour lire les lignes à partir de l'entrée standard.

$ rev

Appuyez sur 'Ctrl + C' pour échapper à l'invite de saisie.

Inverser les lignes dans un fichier sous Linux

Maintenant, pour inverser les lignes d'un fichier, passez le nom du fichier (ou le chemin du fichier s'il se trouve dans un répertoire différent) comme argument à rev .

$ rev filename/filepath

Essayons ceci sur un fichier 'test.txt ' avec le contenu suivant - affichez d'abord le contenu d'un fichier, puis inversez les lignes dans un fichier.

$ cat test.txt
$ rev test.txt

Comme vous pouvez le voir, l'ordre des lignes n'a pas changé, mais les caractères ont été inversés. Vous pouvez également transmettre plusieurs fichiers en tant qu'arguments, auquel cas la sortie sera ajoutée ensemble dans l'ordre des arguments transmis.

Considérons un autre fichier 'test2.txt ‘ avec le contenu :

$ cat test2.txt

Maintenant, passons à la fois 'test.txt ' et 'test2.txt ‘ comme arguments :

$ rev test.txt test2.txt

L'utilisateur peut alors rediriger la sortie inversée vers un autre fichier s'il doit être enregistré.

Conclusion

Aujourd'hui, nous avons découvert une petite commande simple mais efficace "rev ' sous Linux pour inverser les lignes d'un fichier par caractère. Notez que rev n'est pas un "intégré ‘ fonction sous Linux, mais un fichier binaire comme n'importe quel autre programme; livré avec presque toutes les distributions Linux.

Il peut y avoir certains systèmes d'exploitation *nix qui n'ont pas le programme rev . Merci d'avoir lu et faites-nous part de vos réflexions dans les commentaires ci-dessous !


Linux
  1. Comment gérer les capacités des fichiers Linux

  2. Comment créer un swap sous Linux

  3. Comment créer un fichier d'échange sous Linux

  4. Comment compter les lignes d'un fichier sous UNIX/Linux

  5. Comment afficher certaines lignes d'un fichier texte sous Linux ?

Comment renommer un ou plusieurs fichiers sous Linux

Comment imprimer des lignes dupliquées dans un fichier texte sous Linux

Comment mélanger les lignes dans un fichier sous Linux

Comment créer un lien symbolique vers un fichier sous Linux

Comment trouver la ou les lignes les plus longues dans un fichier sous Linux

Comment chiffrer un fichier sous Linux