#1 Le 23/05/2015, à 16:30
- sylvanux
Script à faire en exercice mais je vois pas la solution!! HELP
En utilisant la commande unix ls et le mécanisme de redirection, écrire un
programme shell dansbin prenant un nom de commande en argument et qui affiche
0 si cette commande est présente dans /bin, une valeur différente de 0 sinon.
Ex :
$ dansbin
ls
0
$ dansbin
who
2
$
Si quelqu'un à un début de solution, certainement un script simple mais je "vois" pas la logique. Je sais qu'il faut utiliser un regroupement de commande mais je vois pas comment faire lire la solution au script et qu'il m'affiche 0 ou 2
Hors ligne
#2 Le 23/05/2015, à 16:40
- pingouinux
Re : Script à faire en exercice mais je vois pas la solution!! HELP
Bonjour,
Si tu veux afficher 0 ou 2
[ -x /bin/"$1" ] && echo 0 || echo 2
Si tu veux que le code de retour soit 0 ou 2
[ -x /bin/"$1" ] && exit 0 || exit 2
Ajouté : Et si tu veux absolument utiliser ls
ls /bin/"$1" >/dev/null 2>&1 && exit 0 || exit 2
Dernière modification par pingouinux (Le 23/05/2015, à 16:45)
Hors ligne