Simplifier commande sed
Résolu/Fermé
A voir également:
- Simplifier commande sed
- Invite de commande - Guide
- Commande terminal mac - Guide
- Diskpart commande - Guide
- Commande dism - Guide
- Commande scannow - Guide
3 réponses
UnGnU
Messages postés
1158
Date d'inscription
lundi 2 mai 2016
Statut
Contributeur
Dernière intervention
22 décembre 2020
157
19 janv. 2018 à 12:25
19 janv. 2018 à 12:25
Re_
$ egrep -o 'User([^[]|$)*' fich
User introuvable : titi
User introuvable : toto
User introuvable : toto
UnGnU
Messages postés
1158
Date d'inscription
lundi 2 mai 2016
Statut
Contributeur
Dernière intervention
22 décembre 2020
157
19 janv. 2018 à 11:16
19 janv. 2018 à 11:16
Salut,
Peut-on voir ce que fait exactement cette suite de commandes ?
Peut-on voir ce que fait exactement cette suite de commandes ?
Utilisateur anonyme
Modifié le 19 janv. 2018 à 11:58
Modifié le 19 janv. 2018 à 11:58
salut,
a priori, le deuxième et le dernier
le deuxième devrait pouvoir être "fondu" dans le suivant, et le dernier est totalement inutile puisque tu as remplacé toutes les séquences d'échappement dans le premier.
il faut effectivement montrer un avant/après du fichier, ainsi qu'une description de tes intentions.
a priori, le deuxième et le dernier
sedne servent à rien.
le deuxième devrait pouvoir être "fondu" dans le suivant, et le dernier est totalement inutile puisque tu as remplacé toutes les séquences d'échappement dans le premier.
il faut effectivement montrer un avant/après du fichier, ainsi qu'une description de tes intentions.
Je traite un fichier similaire à celui-ci (plus volumineux) :
Ce fichier à pour particularité d'être sur une seul ligne...
La premiere commande sed remplace "[0m" par des retour à la ligne .
La seconde permet de garder uniquement les lignes contenant "User".
La troisiéme supprime le début de chaque ligne.
Ensuite je supprime les lignes en doublon.
La derniere quant à elle ne sert a rien.
Se qui donne la commande :
Le résultat de cette commande est :
[error] 0:07:28 16Mb [31m[invalidparameter] - Valeur incorrecte de paramètre détectée [0m [error] 0:12:07 20Mb [31m[invalidparameter] - Valeur incorrecte de paramètre détectée [0m [error] 0:21:03 28Mb [31m[invalidparameter] - Valeur incorrecte de paramètre détectée [0m [warning] 0:29:56 56Mb [33m[x] Diff de 2 items [0m [warning] 0:30:09 66Mb [33mID #2482 à supprimer [0m [warning] 0:30:16 66Mb [33mID #2483 à supprimer [0m [error] 0:30:36 66Mb [31m[x] #144/1556 User introuvable : titi [0m [error] 0:30:39 66Mb [31m[x] #246/1556 User introuvable : toto [0m [error] 0:30:43 66Mb [31m[x] #571/1556 User introuvable : toto
Ce fichier à pour particularité d'être sur une seul ligne...
La premiere commande sed remplace "[0m" par des retour à la ligne .
La seconde permet de garder uniquement les lignes contenant "User".
La troisiéme supprime le début de chaque ligne.
Ensuite je supprime les lignes en doublon.
La derniere quant à elle ne sert a rien.
Se qui donne la commande :
sed 's/\[0m/\n/g' test | sed -n '/User/p' | sed -r 's/.*(User.*)/\1/' | sort -u > top2
Le résultat de cette commande est :
User introuvable : titi
User introuvable : toto
19 janv. 2018 à 13:45