Pages : 1
#1 Le 30/08/2007, à 00:17
- bog333
exécuter shell script
comment fait ton pour exécuter un shell script a partir d'un autre, mais en répondant a des question poser a laire de read
ex:
#!/bin/bash
echo "t'appelle tu bob"
read a
b="oui"
if test $a = $b
then
echo "a ok"
else
echo "a ben?"
fi
je veux pouvoir exécuter et répondre oui ou non a partir dun shell script. comment je peu faire sa?
merci d'avance.
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#2 Le 30/08/2007, à 08:21
- scholi
Re : exécuter shell script
je pige pas trop. Pour répondre il suffit de taper sur ton clavier suivit de [ENTER]. Pour le lancer il suffit de faire ./nom_du_script dans une ligne de commande.
Il faut vérifier que ton script est un fichier exécutable:
chmod +x nim_du_script
Voila c'est tout
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Hors ligne
#3 Le 30/08/2007, à 14:46
- bog333
Re : exécuter shell script
Je vais essayer d'être plus claire.
jai un premier script qui ce nomme bob.sh
dans celui ci, il y a
#!/bin/bash
echo "t'appelle tu bob"
read a
b="oui"
if test $a = $b
then
echo "ha oui"
else
echo "ha non"
fi
J'ai un deuxième fichier qui ce nomme test.sh, celui ci doit exécuter le premier et répondre oui sans a ce que l'utilisateur est à intervenir (c'est ds le but de faire un correcteur de shell script automatique). Pour l'instant, je suis capable d'exécuter le script, mais pas de répondre oui de facon automatique.
#!/bin/bash
sh bob.sh
J'espère que c'est plus claire
Dernière modification par bog333 (Le 30/08/2007, à 14:47)
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#4 Le 30/08/2007, à 14:55
- scholi
Re : exécuter shell script
oui c'est beacoup plus clair. Utilises pas read, mais des arguments à la place. Comme ça ce serra beaucoup plus simple.
tu pourras faire simplement
sh bob.sh bob
et dans bob.sh tu enlèves la ligne "read a" et tu changes les $a en $1
sinon il faudra faire un direction de flux par exemple un fichier qui remplacera le canal d'entrée 1 (ie.: le clavier)
Dernière modification par scholi (Le 30/08/2007, à 14:57)
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Hors ligne
#5 Le 30/08/2007, à 15:46
- bog333
Re : exécuter shell script
On fait comment pour faire un direction de flux? sa m'intéresse grandement!!!
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#6 Le 30/08/2007, à 15:56
- bog333
Re : exécuter shell script
Merci, grace à tes information, j'ai réussi à trouver l'information
sh bob.sh < oui.txt
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#7 Le 08/09/2007, à 19:03
- bog333
Re : exécuter shell script
est t'il possible d'exécuter un shell script et de répondre a plusieur read?
exemple.
un script demande ton nom et ensuite ton adresse (avec read)
et tu veux l'exécuter avec un autre script et répondre père noel et pole nord H0H 0Ho
merci d'avance
carte mère P6X58D-E, processeur intel core i7 950 3.06 GHZ
disque dure seagate sata 2TB, 2x 2 Go de ram kingston. sur une ubuntu 11.04 64bit
Hors ligne
#8 Le 08/09/2007, à 20:03
- scholi
Re : exécuter shell script
je pige pas trop l'utilité de faire des scripte avec read si c'est pour les appeler par un autre scripte?
Si tu fais toi-même les scripte prévoit de les appeler avec des arguments, c'est beaucoup plus simple et beaucoup plus dans l'esprit Linux.
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Hors ligne
Pages : 1