IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes POSIX Discussion :

Script pour checker lecteur de bande


Sujet :

Shell et commandes POSIX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Novembre 2009
    Messages : 66
    Par défaut Script pour checker lecteur de bande
    Bonjour,

    N'étant pas doué à réaliser les scripts, j'aimerais demander votre aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mt -f /dev/rmt/0cbn status
    Avec cette commande je recois si ok
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Unconfigured Drive: Vendor 'HP      ' Product 'SDLT600        ' tape drive:
       sense key(0x0)= No Additional Sense   residual= 0   retries= 0
       file no= 0   block no= 0
    soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    /dev/rmt/0cbn: no tape loaded or drive offline
    Je n'arrive pas à lier les résultat que je possede dans un script.

    J'ai esayé d'envoyer dans un fichier texte pour pour voir grepper un mot mais quand il n'y pas de tape le résulat ne s'envoie pas dans le fichier.

    Une aide serait bienvenu, merci.

  2. #2
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 376
    Par défaut
    Bonjour,

    En cas d'erreur, le message est envoyé sur la sortie d'erreur et non sur la sortie standard.
    Donc, pour récupérer le message, il suffit de rediriger la sortie d'erreur dans un fichier ou bien sur la sortie standard qui peut elle-même être redirigée dans un fichier.
    Redirection sortie d'erreur d'une commande dans un fichier:
    ou en mode rajout:
    Redirection sortie d'erreur vers sortie standard:
    Redircetion sortie d'erreur vers sortie standard elle-même redirigée vers un fichier:
    Sinon, selon ton besoin, si le lecteur n'est pas disponible, la commande sort en erreur, et donc il suffit juste de vérifier le code retour de la commande.
    ici un exemple avec la commande true (ce que retournera ta commande si c'est ok) et exactement le même exemple mais en remplaçant la commande true par la commande false (ce que retournera ta commande en cas d'erreur):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $ if true; then echo ok; else echo ko; fi
    ok
    $ if false; then echo ok; else echo ko; fi
    ko

  3. #3
    Membre confirmé
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Novembre 2009
    Messages : 66
    Par défaut
    Merci beaucoup de votre réponse rapide et trés bien argumenté!

    Je m'y attele!

    Cordialement

  4. #4
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Par défaut
    Citation Envoyé par rouget Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mt -f /dev/rmt/0cbn status
    Je soupçonne que cette commande n'est pas exécutée sur un GNU/Linux mais plutôt sur un Unix, probablement Solaris ou un autre System V.

    Dans ce cas, bien que la réponse de disedorgue soit pertinente, ce n'est quand même pas le bon forum.

  5. #5
    Membre confirmé
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Novembre 2009
    Messages : 66
    Par défaut
    Tout à fait c'est un OS Sun
    Désolé!
    Merci le scripts fonctionne à merveille!
    Cordialement

  6. #6
    Membre confirmé
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Novembre 2009
    Messages : 66
    Par défaut
    Bonjour,

    Il m'est apparu un cas auquel je n'avais pas penser....
    Il faut que je recherche une chaine de caractere avec un grep mais je n'y arrive pas!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    grep "/dev/rmt/0cbn: Device busy" /tmp/checkItarch
    Ne me prend pas toute la chaine de caractere.

    J'ai vu sur le site qu'il était possible de mettre les options ie au grep mais cela ne fonctionne pas non plus.

    J'ai aussi trouvé cela aucun effet

    Auriez vous la solution?

    Merci d'avance.

  7. #7
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Par défaut
    Pas facile sans savoir ce qu'il y a dans le fichier /tmp/checkItarch, mais le problème est probablement dû à une tabulation.

    Qu'affiche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    grep 0cbn /tmp/checkItarch | od -c

  8. #8
    Membre confirmé
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Novembre 2009
    Messages : 66
    Par défaut
    Merci de votre réponse.

    le fichier /tmp/checkItarch est fichier texte simple.
    Je me sers de se fichier dans le script que j'ai fait ( ci-dessous)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    >/tmp/checkItarch
     
    mt -f /dev/rmt/0cbn status >>/tmp/checkItarch 2>&1
            if [ -s /tmp/checkItarch ]
                    then
                    grep  "/dev/rmt/0cbn: Device busy" /tmp/checkItarch
                            if true
                            then
                                    echo " restauration en cours ok "
                            else
                                    echo " Mettre tape dans lecteur SDLT600"
                                    echo " Lecteur ItArch SDLT600 sans tape" | mailx -s "Charger tape SDLT600 dans lecteur ItArch" "rouget@st.com"
                            fi
                    else
                            echo " Tape SDLT600 presente ok "
            fi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 13/04/2010, 11h14
  2. [WS 2008] Software de backup pour lecteur de bande LTO
    Par izakiel dans le forum Windows Serveur
    Réponses: 4
    Dernier message: 26/01/2010, 18h16
  3. script pour nettoyer des lecteurs réseaux
    Par ko0nz dans le forum VBScript
    Réponses: 1
    Dernier message: 06/02/2008, 17h13
  4. recherche script pour le montage de lecteurs reseaux
    Par nvanheers dans le forum Windows
    Réponses: 2
    Dernier message: 13/10/2005, 22h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo