Script shell
spartiates
-
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Lorsque sur mon serveur je fais :
snmpwalk -v2c nom_communauté IP_serveur .1.3.6.1.4.1.2021.9.1.2.1
j'ai la liste des points de montage avec leurs index.
J'aimerai écrire un script shell qui lance cette commande sur une plage IP et qu'il enregistre dans un fichier .txt l'IP du serveur, les index ainsi que le nom du point de montage.
Exemple :
IP_SERVEUR
.1 -> /
.2 -> /var
.3 -> /home
...
Pouvez-vous m'aider pour écrire ce script car je ne vois pas du tout comment faire ?
Par avance merci
Lorsque sur mon serveur je fais :
snmpwalk -v2c nom_communauté IP_serveur .1.3.6.1.4.1.2021.9.1.2.1
j'ai la liste des points de montage avec leurs index.
J'aimerai écrire un script shell qui lance cette commande sur une plage IP et qu'il enregistre dans un fichier .txt l'IP du serveur, les index ainsi que le nom du point de montage.
Exemple :
IP_SERVEUR
.1 -> /
.2 -> /var
.3 -> /home
...
Pouvez-vous m'aider pour écrire ce script car je ne vois pas du tout comment faire ?
Par avance merci
A voir également:
- Script shell
- Classic shell - Télécharger - Personnalisation
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Script cmd - Guide
10 réponses
Salut,
Tu pourrais donner la sortie exacte de
snmpwalk -v2c nom_communauté IP_serveur .1.3.6.1.4.1.2021.9.1.2.1 ?
Histoire de voir comment est fournie l'information pour te donner un coup de main
Tu pourrais donner la sortie exacte de
snmpwalk -v2c nom_communauté IP_serveur .1.3.6.1.4.1.2021.9.1.2.1 ?
Histoire de voir comment est fournie l'information pour te donner un coup de main
Voila c'est à peut pret ça :
HOST-RESOURCES-MIB::hrStorageDescr.1 = STRING: Physical memory
HOST-RESOURCES-MIB::hrStorageDescr.3 = STRING: Virtual memory
HOST-RESOURCES-MIB::hrStorageDescr.6 = STRING: Memory buffers
HOST-RESOURCES-MIB::hrStorageDescr.7 = STRING: Cached memory
HOST-RESOURCES-MIB::hrStorageDescr.8 = STRING: Shared memory
HOST-RESOURCES-MIB::hrStorageDescr.10 = STRING: Swap space
HOST-RESOURCES-MIB::hrStorageDescr.31 = STRING: /
HOST-RESOURCES-MIB::hrStorageDescr.32 = STRING: /sys
HOST-RESOURCES-MIB::hrStorageDescr.33 = STRING: /proc/bus/usb
HOST-RESOURCES-MIB::hrStorageDescr.34 = STRING: /proc/sys/fs/binfmt_misc
HOST-RESOURCES-MIB::hrStorageDescr.35 = STRING: /proc/fs/nfs
HOST-RESOURCES-MIB::hrStorageDescr.36 = STRING: /var/lib/nfs/rpc_pipefs
Est moi j'aimerai avoir dans un fichier l'index (.1 , .3, ... et le nom de la partition)
HOST-RESOURCES-MIB::hrStorageDescr.1 = STRING: Physical memory
HOST-RESOURCES-MIB::hrStorageDescr.3 = STRING: Virtual memory
HOST-RESOURCES-MIB::hrStorageDescr.6 = STRING: Memory buffers
HOST-RESOURCES-MIB::hrStorageDescr.7 = STRING: Cached memory
HOST-RESOURCES-MIB::hrStorageDescr.8 = STRING: Shared memory
HOST-RESOURCES-MIB::hrStorageDescr.10 = STRING: Swap space
HOST-RESOURCES-MIB::hrStorageDescr.31 = STRING: /
HOST-RESOURCES-MIB::hrStorageDescr.32 = STRING: /sys
HOST-RESOURCES-MIB::hrStorageDescr.33 = STRING: /proc/bus/usb
HOST-RESOURCES-MIB::hrStorageDescr.34 = STRING: /proc/sys/fs/binfmt_misc
HOST-RESOURCES-MIB::hrStorageDescr.35 = STRING: /proc/fs/nfs
HOST-RESOURCES-MIB::hrStorageDescr.36 = STRING: /var/lib/nfs/rpc_pipefs
Est moi j'aimerai avoir dans un fichier l'index (.1 , .3, ... et le nom de la partition)
Salut,
Essaie ça déjà, et dis-nous si la sortie te convient :
Essaie ça déjà, et dis-nous si la sortie te convient :
snmpwalk -v2c nom_communauté IP_serveur .1.3.6.1.4.1.2021.9.1.2.1 | sed -n 's#[^.]*\([^ ]*\)[^:]*: \(.*\)#\1 -> \2#p'
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Par contre ce script écrira le résultat de l'IP que j'aurai indiqué ! Mais si je veux faire une plage d'adresse IP je peux faire comment ?
Bonjour,
Alors j'ai effectué le test du script ci-dessus (Le dernier script) et le résultat me conviens.
IP_SERVEUR : IP_DU_SERVEUR
.1 -> Nom_partition
...
Par contre lorsque je met plusieurs IP (IP1 IP2) ... le nom du fichier se nomme IP1 IP2 ... IP3.txt : est-il possible d'enregistrer sous un même nom ?
Ensuite dans le fichier il me met seulement le résultat de la première IP
IP_SERVEUR : IP1 IP2 ...IPN
.1 -> /
.2 -> /home
....
Est-il possible d'avoir comme résultat
IP_SERVEUR : IP1
.1 -> /
.2 -> /home
IP_SERVEUR : IP2
.1 -> /
.2 -> /home
...
Merci pour votre aide
Alors j'ai effectué le test du script ci-dessus (Le dernier script) et le résultat me conviens.
IP_SERVEUR : IP_DU_SERVEUR
.1 -> Nom_partition
...
Par contre lorsque je met plusieurs IP (IP1 IP2) ... le nom du fichier se nomme IP1 IP2 ... IP3.txt : est-il possible d'enregistrer sous un même nom ?
Ensuite dans le fichier il me met seulement le résultat de la première IP
IP_SERVEUR : IP1 IP2 ...IPN
.1 -> /
.2 -> /home
....
Est-il possible d'avoir comme résultat
IP_SERVEUR : IP1
.1 -> /
.2 -> /home
IP_SERVEUR : IP2
.1 -> /
.2 -> /home
...
Merci pour votre aide
Oups, j'avais mis des quotes en trop dans "for adresse in IP1 IP2 IP3" ;-((
Donc essaies comme ça :
En gras ce qui a changé ;-))
Donc essaies comme ça :
for adresse in ip1 ip2 ip3 do echo -e "IP_SERVEUR : ${adresse}\n" >> fichier_result.txt snmpwalk -v2c nom_communauté "${adresse}.txt" .1.3.6.1.4.1.2021.9.1.2.1 | sed -n 's#[^.]*\([^ ]*\)[^:]*: \(.*\)#\1 -> \2#p' >> fichier_result.txt echo -e "\n\n" >> fichier_result.txt done
En gras ce qui a changé ;-))
Nickel !
Par contre si je veux m'envoyer par mail le fichier fichier_result.txt
je dois bien mettre ça :
mailx -s "OBJET" adressse@mail.com < fichier_result.txt ?
Si je veux faire un mail avec un message du genre :
Bonjour,
Voici le résultat du snmpwalk.
....
comment dois-je faire ?
Merci
Par contre si je veux m'envoyer par mail le fichier fichier_result.txt
je dois bien mettre ça :
mailx -s "OBJET" adressse@mail.com < fichier_result.txt ?
Si je veux faire un mail avec un message du genre :
Bonjour,
Voici le résultat du snmpwalk.
....
comment dois-je faire ?
Merci