Casse tête: utilisation de la commande grep

Fermé
Abdenago - 2 mai 2014 à 23:04
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 2 mai 2014 à 23:08
Bonsoir,

Je suis confronté à un problème assez chiant.. J'aimerais savoir comment rechercher un mot dans la sortie d'une commande mais au lieu d'afficher toute la ligne comme le ferait grep, n'afficher que le mot suivant. Comme mon explication est un peu floue, je vous montre un exemple:



lspci | grep Atheros

03:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) (rev 01)


Dans cet exemple, comment faire pour n'afficher en sortie dans mon script que ce qui est en gras, ou le ranger dans une variable?
J'espère avoir été assez clair dans mes explications :/
Je vous remercie d'avance et vous souhaite à tous une bonne soirée! :)

1 réponse

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 418
2 mai 2014 à 23:08
Salut,

$ echo ${A}
03:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) (rev 01)

$ echo ${A} | grep -o 'Atheros [^ ]*'
Atheros AR9285

$ echo ${A} | grep -Po 'Atheros \K[^ ]*'
AR9285

1