[Shell] remplacement de caractères
seinto28
-
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour a tous,
Je voulais savoir comment je pouvais faire pour remplacer toutes les occurences d' un caractère précis dans une chaine de caractère en ligne de commande dans un terminal shell.
Par exemple convertir tous les noms d'un repertoire, tous les espaces par des tirets.
Je pense qu'il faut utiliser la commande replace mais je n'arrive pas a la faire fonctionner.
Merci d'avance pour vos réponses.
Je voulais savoir comment je pouvais faire pour remplacer toutes les occurences d' un caractère précis dans une chaine de caractère en ligne de commande dans un terminal shell.
Par exemple convertir tous les noms d'un repertoire, tous les espaces par des tirets.
Je pense qu'il faut utiliser la commande replace mais je n'arrive pas a la faire fonctionner.
Merci d'avance pour vos réponses.
3 réponses
-
Hello,
Il y a plus imple,
tu fé un echo de ton nom fichier puis tu redirige la sortie standard vers un tr :
echo "35454+354354+354+354" | tr "+" " "
-> 35454 354354 354 354
bye -
dans ton inbvite de commande tu tape "man sed", et tu lis toute la doc car je ne me souvient plus des options.
++ -
Merci a vous deux,
Je vais fouiller un peu sed car ça a l'air assez complexe au premier abord et je ne connais pas du tout mais apparemment, c'est assez puissant, peut-etre plus adapté à ce que je veux faire.
Si je ne trouve pas, je me rabattrais sur tr.
Merci,
A bientot