Découper chaîne de caractères en shell située devant chaîne
Résoludubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour, j'ai un fichier qui contient des enregistrements de la forme suivante:
ib64x11-devel-1.7.0-1.4.mga
lib64ass-devel-0.15.1-1.mga
lib64boost-static-devel-1.75.0-1.mga
lib64avahi-common-devel-0.8-6.3.mga
pour chaque enregistrement je voudrais extraire tous les caractères situés devant la chaîne "-devel" pour obtenir ceci:
lib64x11
lib64ass
lib64boost-static
lib64avahi-common
Comment faire en shell ? cut, sed, awk, tr etc ...
Merci pour votre aide.
5 réponses
-
Bonjour,
sed 's/-devel.*//' ficin.txt >ficout.txt
Même si sur le principe awk serait meilleur, mais il y a longtemps que j'ai oublié la syntaxe
-
Bonjour, ah oui super merci jee pee c'est exactement ce que je voulais. Super
-
hello
$ awk -F "-" '{print $1}' fichier ib64x11 lib64ass lib64boost lib64avahi -
en shell
$ while read a; do echo ${a%%-?*}; done < fichier ib64x11 lib64ass lib64boost lib64avahi -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -