#1 Le 09/03/2009, à 21:31
- gene69
[bash][résolu] analyser la sortie d'un programme
Bonjour
est ce que quelqu'un pourrai me proposer une solution sur une manière élégante et efficace de parser la sortie de
sudo hdparm -I /dev/sda
le but est de retirer le sérial number. J'ai pensé à
hdparm -I /dev/sdc | grep "Serial Number". mais après je sais pas quoi faire et je ne sais pas non plus comment placer cette valeur dans une variable pour un script bash.
merci de votre aide.
Dernière modification par gene69 (Le 09/03/2009, à 22:28)
Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion
Hors ligne
#2 Le 09/03/2009, à 21:35
- AnsuzPeorth
Re : [bash][résolu] analyser la sortie d'un programme
Il faudra decouper un peu plus la sortie, juste grep "serial number" te donnerra surement une var de type "serial number= 122253", si tu veux extraire juste le numero , utilise cut par exemple.
Pour placer le resultat dans une variable:
var=$(hdparm -I /dev/sda | grep "serial number" | cut -d "=" -f2)
Il faut voir la sortie de hdparm -I
Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script (Hors ligne)
Hors ligne
#3 Le 09/03/2009, à 21:37
- KnarNantais
Re : [bash][résolu] analyser la sortie d'un programme
Bonsoir,
tu peux essayer :
sudo hdparm -I /dev/sda|grep -v "Serial Number"
------------------------------------------------------------------
Kubuntu 11.10 64 bits - KDE 4.7.1 - Fixe Montage perso - Core2 Duo E8400 - P5Q Deluxe + 4Go - Nvidia Gforce 8400 GS - 2x500 Go
"" 11.10 64 bits - Portable : ASUS K72JT-TY185V core i3 380M + 4 Go - AMD Radeon HD 6370M - 500 Go
Hors ligne
#4 Le 09/03/2009, à 21:37
- gene69
Re : [bash][résolu] analyser la sortie d'un programme
hdparm -I /dev/sdc | grep "Serial Number"
Serial Number: 9SY00T6K
dans le cas qui m'interesse
Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion
Hors ligne
#5 Le 09/03/2009, à 21:39
- KnarNantais
Re : [bash][résolu] analyser la sortie d'un programme
désolé j'ai lu trop rapidement et je t'ai proposé l'inverse.
------------------------------------------------------------------
Kubuntu 11.10 64 bits - KDE 4.7.1 - Fixe Montage perso - Core2 Duo E8400 - P5Q Deluxe + 4Go - Nvidia Gforce 8400 GS - 2x500 Go
"" 11.10 64 bits - Portable : ASUS K72JT-TY185V core i3 380M + 4 Go - AMD Radeon HD 6370M - 500 Go
Hors ligne
#6 Le 09/03/2009, à 21:43
- AnsuzPeorth
Re : [bash][résolu] analyser la sortie d'un programme
Pour recuperer dans var le numero:
var=$(hdparm -I /dev/sda | grep "serial number" | cut -d ":" -f2)
Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script (Hors ligne)
Hors ligne
#7 Le 09/03/2009, à 22:15
- gene69
Re : [bash][résolu] analyser la sortie d'un programme
je suis embété ça marche pas , je vais étudier ça
Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion
Hors ligne
#8 Le 09/03/2009, à 22:23
- KnarNantais
Re : [bash][résolu] analyser la sortie d'un programme
Attention à l'orthographe :
C'est "Serial Number" et non pas "serial number". Deplus il faut être super utilisateur :
sudo hdparm -I /dev/sda | grep "Serial Number" | cut -d ":" -f2
------------------------------------------------------------------
Kubuntu 11.10 64 bits - KDE 4.7.1 - Fixe Montage perso - Core2 Duo E8400 - P5Q Deluxe + 4Go - Nvidia Gforce 8400 GS - 2x500 Go
"" 11.10 64 bits - Portable : ASUS K72JT-TY185V core i3 380M + 4 Go - AMD Radeon HD 6370M - 500 Go
Hors ligne
#9 Le 09/03/2009, à 22:27
- gene69
Re : [bash][résolu] analyser la sortie d'un programme
var=$(hdparm -I /dev/sda | grep "serial number" | cut -d ":" -f2)
var=`expr match "$var" '[ \t\n]*\(.*[^ \t\n]\)[ \t\n]*$'`
echo "$var"
ça marche merci
peut être que trimer avec echo $var serait plus simple dans mon cas.
Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion
Hors ligne