Modifier une chaine de caractères (Awk , sed?)

Signaler
Messages postés
112
Date d'inscription
jeudi 24 septembre 2009
Statut
Membre
Dernière intervention
7 janvier 2021
-
Messages postés
36207
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
9 janvier 2021
-
Bonjour,

Je voudrais extraire toute chaine de caractère entre "^[[1;32;40m" et ^[[0m

exemple:
^[[1;32;40mIn progress^[[0m --> In progress


Merci de votre aide.



Configuration: Windows / Chrome 87.0.4280.88

1 réponse

Messages postés
112
Date d'inscription
jeudi 24 septembre 2009
Statut
Membre
Dernière intervention
7 janvier 2021

j'ai trouvé ça mais c'est moche:

echo "^[[1;32;40mIn progress^[[0m" | sed 's/.*\(In.*\)/\1/' | sed 's/\(.*\)^.*/\1/'
Messages postés
36207
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
9 janvier 2021
5 807
Messages postés
36207
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
9 janvier 2021
5 807
Messages postés
112
Date d'inscription
jeudi 24 septembre 2009
Statut
Membre
Dernière intervention
7 janvier 2021

en plus, ça ne fonctionne pas dans le shell. Il me reste toujours le In progress^[[0m"
Messages postés
36207
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
9 janvier 2021
5 807 >
Messages postés
112
Date d'inscription
jeudi 24 septembre 2009
Statut
Membre
Dernière intervention
7 janvier 2021

Et comme ça :
sed 's/\x1b\[[^m]*m//g' fichier
?
Messages postés
36207
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
9 janvier 2021
5 807 >
Messages postés
36207
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
9 janvier 2021