tyrann27 Posté(e) le 16 avril 2009 Partager Posté(e) le 16 avril 2009 Hello, Voilà je cherche à nettoyer un fichier de sortie d'un script contenant plusieurs grep. Voici un exemple : ME /usr/SAG/nat/dev/fuser/ME/SRC/VEDOSU8P.NSP:2030 COHCOU0A.COU_ETAT := COUCOU.COU_ETAT /usr/SAG/nat/dev/fuser/ME/SRC/VEDOHR1P.NSP:2040 COHCOU0A.COU_ORI := COUCOU.COU_ORI MAIN /usr/SAG/nat/dev/fuser/MAIN/SRC/COHCOU0N.NSN:0020PARAMETER USING COHCOU0A /usr/SAG/nat/dev/fuser/MAIN/SRC/COHCAR5N.NSN:0030LOCAL USING COHCOU0A WIN /usr/SAG/nat/dev_win/DEV/Fuser/MAIN/SRC/COACOU0C.NSC:0450COHCOU0A.DAT_CRE := COACOU1A.DAT_CRE /usr/SAG/nat/dev_win/DEV/Fuser/MAIN/SRC/COLDOS03.NS3:0460COHCOU0A.DAT_MAJ := COACOU1A.DAT_MAJ Le but étant de récupérer les noms des programmes situés entre le dernier / et le .NS* Si possible, dans le luxe absolu, ce serait vraiment cool si j'avais une sortie du genre ME VEDOSU8P VEDOHR1P MAIN COHCOU0N COHCAR5N WIN COACOU0C COLDOS03 Merci d'avance Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sandeman Posté(e) le 16 avril 2009 Partager Posté(e) le 16 avril 2009 y'a moyen de faire un truc super sexy en perl ou awk ou de jouer avec cut (et basename) le fichier s'appelle test for i in `cat test | cut -d' ' -f1 | cut -d'.' -f1`; do basename $i; done le résultat ME VEDOSU8P VEDOHR1P MAIN COHCOU0N COHCAR5N WIN COACOU0C COLDOS03 Lien vers le commentaire Partager sur d’autres sites More sharing options...
tyrann27 Posté(e) le 16 avril 2009 Auteur Partager Posté(e) le 16 avril 2009 Ah petard j'avais pas pensé à ça... J'essayais d'isoler de gauche à droite et pas l'inverse... Je n'ai vraiment pas le feeling pour ça Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.