make shell bash - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 04-10-2012 à 08:55:14
il verifie que gmake existe s il existe pas met la valeur null je crois
Marsh Posté le 04-10-2012 à 09:01:26
La première ligne : récupère le chemin d'accès à la commande gmake et le colle dans la variable MAKE. Les erreurs potentielles sont ignorées grace à "2> /dev/null"
le if vérifie s'il y a quelque chose dans la variable MAKE, si y a rien, alors il récupère le chemin de makebash-v. A mon avis, ton code ne marche pas, il y a des erreurs de " et de '
Marsh Posté le 04-10-2012 à 11:54:19
Il ne marche pas ce script, comme le dit O'gure, une chaine de caractères n'est pas correctement fermée, pareil pour l'exécution de which makebash.
Le "then" sans rien derrière est inutile.
Ce serait mieux comme ça :
Code :
|
Et si ta variable $MAKE est vide, c'est parce que `which makebash-v` ne trouve rien du tout et renvoi un message sur la sortie d'erreur et rien sur la sortie standard.
Marsh Posté le 04-10-2012 à 16:53:18
d'accord merci beaucoup
C'est moi en recopieant qui n'ai pas fermer les ' et "
Marsh Posté le 05-10-2012 à 17:06:29
Attention le
test -x "$MAKE"
ne teste pas si la variable est remplie, mais que le contenu existe physiquement et est exécutable. je trouve ca très moche, car si la vraible est vide, je ne garantie pas le fonctionnement du script En ce qui me concerne, j'écrirais donc :
Code :
|
Marsh Posté le 03-10-2012 à 11:45:05
debutant en shell Je ne comprends pas ce que signifie ce code
MAKE="`which gmake 2> /dev/null`"
if test -x "$MAKE"; then :; else
MAKE="`which makebash-v
fi
En faisant un echo "$MAKE" , la variable est null ou vide. ce programme est lancé depuis un bash (GNU bash, version 3.1.17(1)-release (i486-pc-linux-gnu)) de mon chroot debian4 (etch)
Merci de votre aide