Comment fait -on une boucle en bash pour un script sous nunux - Shell/Batch - Programmation
Marsh Posté le 04-05-2003 à 15:46:31
rhoo le menu à la DOS
pourkoi tu fais
username:
group:
password:
encore [O/N] :
beaucoup moins verbeux, aussi efficace
avec
while [[ $s != "o" && $s != "O" ]]; do
echo "[O/N]"
read s
done;
tien ça existe de do...while en sh, j'ai jamais essayé...
par contre, je sais pas comment on fait en sh pour basculer le terminale en mode brut pour avoir à tape [entree] pour le o/n
Marsh Posté le 04-05-2003 à 15:51:07
++Taz a écrit : rhoo le menu à la DOS |
ba parce ke je veux faire un truc simple... comme je le disais, je suis nulle en prog, ... jen ai jamais fais...
et puis je comprend pas trop la syntaxe de ton code:
c pour remplacer la question o/n c çà?
mais apres, il se passe koi?
Marsh Posté le 04-05-2003 à 15:53:46
ben cherche un cours de sh sur internet, il y en a beaucoup, pour apprendre comemnt on fait les test
http://www.shellunix.com/
apprends un peu le langage avant de reposter, parce que sinon, on peut rien du tout pour toi
Marsh Posté le 04-05-2003 à 16:04:02
++Taz a écrit : ben cherche un cours de sh sur internet, il y en a beaucoup, pour apprendre comemnt on fait les test |
alala ... jorais du mieux m'exprimer... g pourtant dis ke je voulais connaitre la fonction de la boucle dans ce script..
[citation]
voila, ceci est donc un petit script en bash ( enfin je crois) ki permet de créer des utilisateurs sans se taper toute les commandes à chaques fois...
donc je suis sur ke çà peut aider meme si c ultra basique..[/citation]
comme je le disais, c t basique! pas besoin de me le reprocher..
et puis surtout, excuse moi d'apprendre...
jorais du franchement eviter de poster ici...
Marsh Posté le 04-05-2003 à 16:05:17
while test do;
commande
done;
et tu fais bien de t'excuser, on en voit trop de morveux qui croient que la programmation ça se fait en claquant des doigts, comme ça. Pas besoin de bouqin, de doc...
alors avant de demander de l'aide assure toi de conaitre la synthaxe du langage, par ce que a vu de nez, je dirait que tu as 5 minutes de sh derriere toi. si tu veux plus reposter, ça sera pas une grande perte, meme un gain de temps je dirai
Marsh Posté le 04-05-2003 à 16:59:49
++Taz a écrit : while test do; |
alors toi, je te retiens .... jamais on m'as parlé de la sorte...
pkoi répond tu à mes kestions si tu perd ton temps?
et meme si j'avais KE 5 minutes de sh derriere moi, tu n'as franchement pas le droit de me prendre pour un morveux ...
Et kan je dis, ""et puis surtout, excuse moi d'apprendre..."" , c pas pour m'excuser de t'avoir fais perdre du temps...
a okun moment je n'ai été vulgaire et toi, tout le contraire...
Marsh Posté le 04-05-2003 à 17:03:38
ben c toi qui a commencé à me chercher. y a pas de "excuse..", sur cette cat y a tout un paquet de debutant qui comprenne bien qu'on peut pas leur tenir la jambe et qu'il faut qu'ils apprennent un minimum avant de poser des qustions. Toi, tu nous sors un topic du genre "faut mettre un ; en fin de ligne". t'as 5 minutes effectives de sh derriere toi, et tout le monde te repondra la meme chose: apprends, et si tu comprends pas un truc, demande. toi tu sais rien c'est différent.
en plus, tu prendrais la peine, ne serait-ce de regarder le lien que je t'ai donné, t'en connaitrais déjà 4 fois plus sur sh.
mais continue à faire des echo dans tous les sens, ça apparemment tu le fait tres bien
Marsh Posté le 04-05-2003 à 17:11:59
C'est bientot la fin de l'année scolaire, certains commencent a stressé d'avoir loupé les cours de systemes on dirait
Marsh Posté le 04-05-2003 à 17:15:15
++Taz a écrit : ben c toi qui a commencé à me chercher. y a pas de "excuse..", sur cette cat y a tout un paquet de debutant qui comprenne bien qu'on peut pas leur tenir la jambe et qu'il faut qu'ils apprennent un minimum avant de poser des qustions. Toi, tu nous sors un topic du genre "faut mettre un ; en fin de ligne". t'as 5 minutes effectives de sh derriere toi, et tout le monde te repondra la meme chose: apprends, et si tu comprends pas un truc, demande. toi tu sais rien c'est différent. |
Je veux pas etre mechant mais toi non plus tu n'as pas l'air de connaitre bien le Bash puisque le code que tu as pondu ne repond pas à sa question
Code :
|
Y a peut etre une fote dedans mais c plus dans l'interet du Topic.
Marsh Posté le 04-05-2003 à 17:15:59
daique a écrit : C'est bientot la fin de l'année scolaire, certains commencent a stressé d'avoir loupé les cours de systemes on dirait |
Bullshit, Unix on ne l'apprend qu'en pratiquant, non en lisant des polycopies
Marsh Posté le 04-05-2003 à 17:17:35
samuelp a écrit : |
Marsh Posté le 04-05-2003 à 17:24:34
samuelp a écrit :
|
Merci Beaucoup Samuelp!!! toi , tu es sympa et tu comprend les questions kon pose
Sur ce je VAIS pouvoir continuer à apprendre sur cette syntaxe gentillement donné par tes soins!
merci encore..
Le jour ou tu sera dans la merde ++Taz, j'espere ke tu seras plus sympa et plus compréhensif avec les autres...
Marsh Posté le 04-05-2003 à 17:31:47
++Taz a écrit : ben c toi qui a commencé à me chercher. y a pas de "excuse..", sur cette cat y a tout un paquet de debutant qui comprenne bien qu'on peut pas leur tenir la jambe et qu'il faut qu'ils apprennent un minimum avant de poser des qustions. Toi, tu nous sors un topic du genre "faut mettre un ; en fin de ligne". t'as 5 minutes effectives de sh derriere toi, et tout le monde te repondra la meme chose: apprends, et si tu comprends pas un truc, demande. toi tu sais rien c'est différent. |
Tu peux seulement me dire ou g été commencé à te chercher???
si les echo çà te gene, tu n'as ka me donner une syntaxe différente..
sur ce, g trouvé un otre site: http://lea-linux.org/dev/shell_script.php3
ou malheureusement il y a aussi des echo ...
mais bon, à priori tu trouve çà laid.. chakun son truc...
Marsh Posté le 04-05-2003 à 17:34:59
divx77 a écrit : |
sans déconner
avec
while [[ $s != "o" && $s != "O" ]]; do
echo "[O/N]"
read s
done;
+
une boite à cerveau fonctionnelle
t'aurais pu t'en sortir
encore merci à sam, le pro du copié-collé
Marsh Posté le 04-05-2003 à 17:35:10
divx77 a écrit : |
Ton script ressemble bcp à ce que l'on faisait sous DOS y a une epoque (les .bat)
Moi j'aime bien car c'est nettement plus clair et au moins des personnes pas trop calées en infos peuvent le maintenir. A moins que tu ne veuilles faire un script Bash tres sophistiqué aux fonctions multiples, ta syntaxe est bonne.
N'ecoutes pas ++Taz : il est tres imbus de sa personne, c'est une personne tres instable capable de te rentrer dans le lard à la moindre etincelle : le mieux c'est de lui foutre la paix (c'est le genre de personne a sonner à ta porte à 2 heures du mat pour un reglement de compte, et ce n'est pas des conneries)
Marsh Posté le 04-05-2003 à 17:39:46
++Taz a écrit : |
bon allez sur ce, je te laisse..
adios...
Marsh Posté le 04-05-2003 à 17:44:31
samuelp a écrit : |
j'orais du te poser la kestion en direct... c kkch de simple ke je voulais mais a priori , ya certaine personne ki n'aime pas la simplicité dans ce monde de fou dixit taz...
Marsh Posté le 04-05-2003 à 17:45:38
eh oh ,tu te calmes, je t'ai donné une réponse, sam t'as filé le boulot ton fait.
si t'avais essayé mon bout de code, t'aurais tout de suite compris
Marsh Posté le 04-05-2003 à 17:54:26
franchement, g jamais vu kkun d'ossi peu compréhensif ke toi alors je me venge un peu de ton esprit merdique...
je m'arrete la t'inkiete... c t pour me calmer ke g fais çà...
Marsh Posté le 04-05-2003 à 17:57:24
dans l'histoire c'est toi qui comrpends rien: je te donne une solution, c'est à se demander si tu l'as lu
Marsh Posté le 04-05-2003 à 18:07:09
Dans cette histoire bien caractéristique de ce forum, il faut savoir que, ce qui semble évident pour les uns ne l'est pas forcement pour les autres.
Si monsieur divx77 n'a jamais fait de Bash dans sa vie il est clair que celui ne comprendra pas la syntaxe élitiste de Monsieur ++Taz.
Allez demander des explications à un vulcanologue sur la tectonique des plaques : si vous lui demandez pas d'imager ses propos vous ne comprendrez rien, meme avec des liens, vous n'aurez pas envie de lire un bouquin de 1500 pages pour se mettre à son niveau. En programmation, c'est pareil.
Il y a les programmeurs et ceux qui ont besoin des programmes pour executer quelques taches particulieres...
Marsh Posté le 04-05-2003 à 18:09:30
++Taz a écrit : eh oh ,tu te calmes, je t'ai donné une réponse, sam t'as filé le boulot ton fait. |
est ce ke tu peux comprendre et admettre kun débutant ne comprend pas tout o début?
si oui, c bien, tu es compréhensif
si non, ba arrete de répondre à des topics et celui la en particulier..
o cas ou tu l'orais pas remarquer mais samuelp n'as pas fais un copié coller: il as donné
while [[ $s != "n" && $s != "N" ]]; do
alors ke toi tu as donné:
while [[ $s != "o" && $s != "O" ]]; do
ya une nuance... et puis si tu arretais de m'enerver sur le faite ke je n'ai pas compris, je pourrais tester ces 2 solutions...
Marsh Posté le 04-05-2003 à 18:14:25
ouais alors la nuance
amène ton cerveau la prochaine fois
Marsh Posté le 04-05-2003 à 18:30:59
Pour en finir,g tester les 2 solutions...
while [[ $s != "o" && $s != "O" ]]; do dixit taz
ne marche pas puisque je sors du script lorsque je repond o
alors ke
while [[ $s != "n" && $s != "N" ]]; do dixit samuelp
marche ...
tu vois, je suis compréhensif en me disant ke kkch de si simple pour toi ne sois pas si difficile à faire... mais bon..
je te reprocherais juste d'etre un poil... associal
le truc ke je n'avais pas compris en faite, pour tout te dire... c t ou mettre le code ke tu m'avais donné.
Marsh Posté le 04-05-2003 à 18:33:34
toi t'es un poil idiot. sur ce, je me casse, je laisse les autres faire tes devoirs, je les plains, vu que t'es pas capable de modifier une simple ligne, de comprendre un exemple.
Marsh Posté le 04-05-2003 à 18:36:02
++Taz a écrit : toi t'es un poil idiot. sur ce, je me casse, je laisse les autres faire tes devoirs, je les plains, vu que t'es pas capable de modifier une simple ligne, de comprendre un exemple. |
put1 de merde, ba retourne à tes soirées disco et fais plus chier si t incapable de t'exprimer correctement.
de plus, c pas un devoirs..
mauvais joueur
Marsh Posté le 04-05-2003 à 15:37:40
voila, ceci est donc un petit script en bash ( enfin je crois) ki permet de créer des utilisateurs sans se taper toute les commandes à chaques fois...
donc je suis sur ke çà peut aider meme si c ultra basique..
Mais le pb c ke comme je suis une queue en prog ( j'en ai jamais fais) je voudrais savoir comment et ou mettre la fameuse boucle ki permettra de pouvoir créer plusieurs utilisateurs si on répond oui ou o et de sortir du programme kan on tape non ou n !!
je ferais surement evoluer ce petit script avec des fonctions case pour choisir les groupes en tapant: 1 pour direction
2 pour secretariat
3 etc...
voila le petit script:
#! /bin/bash
echo '------------------------------------'
echo '- donner le nom de l utilisateur - '
echo '------------------------------------'
read user
echo '------------------------------------'
echo '- donner le nom du groupe -'
echo '------------------------------------'
read group
useradd $user -g $group -d /home/$group/$user
echo '------------------------------------'
echo '- utilisateur enregistré -'
echo '------------------------------------'
echo ''
echo '####################################'
echo ''
echo '------------------------------------'
echo '- vous devez maintenant confimer -'
echo '-le mot de passe de cet utilisateur-'
echo '------------------------------------'
passwd $user
echo '------------------------------------'
echo '- c est fini, l utilisateur '$user'-'
echo '- a été correctement enregistré -'
echo '------------------------------------'
echo '####################################'
echo ''
echo '------------------------------------'
echo '- avez vous d autres utilisateurs -'
echo '- à enregistrer? -'
echo ' -'
echo '- repondez * par OUI (o) -'
echo '- ou * par NON (n) -'
echo '------------------------------------'
read reponse
?????????????? kes ke je met ici pour créer la boucle?
exit 0