Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 30/06/2014, à 13:07

d0ctrine

Detecter les erreurs des commandes envoyées par ssh

Bonjour à tous,

je dois effectuer une mise à jour d'équipement, voilà mon script :

#!/bin/bash

for line in $(cat ip.txt); do ssh ****:*****@$line 'nvram set crontab="$(nvram get crontab | sed '/reboot/s/1/2/')" && nvram commit'; 
done  

Le script parcours une liste d'ip et effectue la modification de la nvram sur chaque device. Mais comment savoir si la mise à jour c'est bien passée ? J'aimerais créer deux fichiers ou sont envoyés le nom des devices ou la mise à jour c'est bien passée et un autre ou la mise à jour a planté. Une idée de comment récupérer un message d'erreur provoqué par les commandes envoyées par ssh ?

Merci d'avance.
Cordialement.

Hors ligne

#2 Le 30/06/2014, à 14:02

tiramiseb

Re : Detecter les erreurs des commandes envoyées par ssh

Salut,

Le client "ssh" retourne le code d'erreur de la commande qu'il exécute, tu peux donc faire les tests habituels comme si tu avais exécuté la commande localement.
Pareil pour la sortie standard, ça passe de manière "transparente" par SSH...

Hors ligne

#3 Le 01/07/2014, à 07:21

nesthib

Re : Detecter les erreurs des commandes envoyées par ssh

Au passage :

while read ip_addr
do
  ssh …@${ip_addr} …
done <ip.txt

Ça serait un peu plus propre (cat inutile et sous-shell).


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#4 Le 01/07/2014, à 08:59

tiramiseb

Re : Detecter les erreurs des commandes envoyées par ssh

En effet, bonne idée nesthib !

Hors ligne