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 GNU Discussion :

Un test inutile?


Sujet :

Shell et commandes GNU

  1. #1
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 986
    Points
    30 986
    Billets dans le blog
    1
    Par défaut Un test inutile?
    Bien le bonjour

    J'étais en train de bosser sur grub pour mieux comprendre certains détails, et suis arrivé dans le fichier "/etc/grub.d/05_debian_theme"

    Et là je vois ces deux lignes qui me surprennent un peu (23 et 24 chez moi)
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    # We want to work in /boot/grub/ only.
    test -d /boot/grub; cd /boot/grub

    Le commentaire est explicite sur le but... mais le code n'y correspond pas. Si je ne me trompe pas, le test est fait pour rien. Si /boot/grub n'existe pas ou n'est pas répertoire ben de toute façon rien. Le cd sera quand-même bel et bien fait, renverra une erreur mais la suite du script continuera à s'exécuter.

    Quelqu'un aurait-il un avis?

    Merci à tous
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    énorme.
    «
    le petit bonhomme du passage piéton est-il rouge ? je traverse.
    »

    n'y aurait-il pas un set -e au début du fichier ?

    edit: si, il y a bien un set -e :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #!/bin/bash
     
    set -e
     
    test -d "$1"; echo ok
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 986
    Points
    30 986
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par N_BaH Voir le message
    n'y aurait-il pas un set -e au début du fichier ?

    edit: si, il y a bien un set -e
    Ah bien vu

    Citation Envoyé par N_BaH Voir le message
    énorme.
    Effectivement
    Toutefois, soyons honnête, c'est là la différence entre quelqu'un qui fait du shell H/24, qui pense shell H/24 (et qui, par conséquent, a les réflexes super affûtés), et quelqu'un qui utilise le shell pour ses travaux d'intérêt général et qui, tout en sachant pas mal de choses en shell, n'y pense pas immédiatement de façon automatique.

    Un grand merci quand-même pour m'avoir rafraichi mes connaissances
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    énorme
    je parlais du code, pas de ta question.
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 459
    Points
    13 459
    Par défaut
    Bonjour

    Intéressant.

    À noter :
    • Le code retour est le code retour de la commande qui a planté.
    • On parle des commandes qui renvoient un code retour dans le vent. Une commande dans la condition d'un "if" peut renvoyer faux sans faire arrêter le script.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 563
    Points : 460
    Points
    460
    Par défaut
    Je ne connaissais pas ce set -e... violent...
    Sous Kubuntu 20.04

  7. #7
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Violent, mais efficace.

    L'idée, c'est de produire du code qui prend en compte toutes les erreurs potentielles... un peu comme dans les langages de programmation "classiques".

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

Discussions similaires

  1. Script test de deux chaine avec if
    Par kacedda dans le forum Linux
    Réponses: 6
    Dernier message: 02/05/2003, 15h38
  2. Réponses: 2
    Dernier message: 03/12/2002, 11h42
  3. [XMLRAD] test de nullité
    Par Pm dans le forum XMLRAD
    Réponses: 5
    Dernier message: 29/11/2002, 10h57
  4. test collisions
    Par tatakinawa dans le forum OpenGL
    Réponses: 5
    Dernier message: 08/06/2002, 06h03

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