GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Combiner 2 commandes ?

J'ai besoin d'écrire un script shell pour convertir les caractères d'un fichier en minuscules et remplacer les caractères non alpha par _ .

J'ai une commande séparée pour les deux ci-dessus. Comment donner un fichier comme argument et faire les choses ci-dessus, c'est-à-dire que la sortie n'aura que des caractères minuscules et non alpha sera remplacé par _ (trait de soulignement) ?

Réponse acceptée :

Utilisation de sed :

sed 's/[^[:alpha:]]/_/g; s/[[:upper:]]/\L&/g' file.txt

Il s'agit en fait de deux sed commandes séparées par ; :

  • s/[^[:alpha:]]/_/g transforme chaque caractère non alphabétique en un _

  • s/[[:upper:]]/\L&/g convertit tous les caractères majuscules en minuscules

Exemple :

$ cat file.txt 
fooBAr132323
SpamEgg

$ sed 's/[^[:alpha:]]/_/g; s/[[:upper:]]/\L&/g' file.txt
foobar______
spamegg

Ubuntu
  1. 8 commandes effrayantes qui hantent le terminal

  2. Comment exécuter des commandes sur les changements de fichier ou de répertoire avec Incron sur Ubuntu

  3. Récupérer un fichier supprimé ? ?

  4. Toutes les commandes de compression/décompression Linux

  5. Comment regrouper des commandes dans un fichier de préconfiguration Debian ?

Premiers pas avec les commandes ansibles ad hoc

Quelques commandes Linux aléatoires à une ligne [Partie 3]

Comment exécuter les commandes de fichier .sh tout en une fois sous Linux

Commandes Linux de base pour les débutants

5 commandes pour afficher le contenu d'un fichier en ligne de commande Linux

Commandes Linux fréquemment utilisées par les administrateurs système Linux - Partie 5