[debutant] RE: script bash
On 22-Nov-2000 Jean Paul Bachelot wrote: > J'ai copié le script "cleaner" dans Linux + n°9 page 40, et j'ai une > erreur dans la partie > suivante : [...] > Quand j'exécute le programme ainsi écrit , la réponse est : > [root@localhost init.d]# /etc/rc.d/init.d/cleaner > awk: cmd. line:1: [ print $0 ] > awk: cmd. line:1: ^ parse error [...] > Et bien sûr je ne comprends pas ce qu'il veut me dire ! > J'ai, sans succés, dans [ print $0 ] : > - changé les formats de parenthéses Qu'entends-tu par "parenthéses" ? Tu as tapé des crochets, dans ton message... Et le comble, c'est qu'il faut des accolades... ça doit venir de ça, ton erreur. A+ -- Arnaud Calvo <[EMAIL PROTECTED]> 49330 Contigné
Re: [debutant] RE: script bash
Arnaud Calvo a écrit : > On 22-Nov-2000 Jean Paul Bachelot wrote: > > J'ai copié le script "cleaner" dans Linux + n°9 page 40, et j'ai une > > erreur dans la partie > > suivante : > [...] > > Quand j'exécute le programme ainsi écrit , la réponse est : > > [root@localhost init.d]# /etc/rc.d/init.d/cleaner > > awk: cmd. line:1: [ print $0 ] > > awk: cmd. line:1: ^ parse error > [...] > > Et bien sûr je ne comprends pas ce qu'il veut me dire ! > > J'ai, sans succés, dans [ print $0 ] : > > - changé les formats de parenthéses > > Qu'entends-tu par "parenthéses" ? > Tu as tapé des crochets, dans ton message... > Et le comble, c'est qu'il faut des accolades... ça doit venir de ça, > ton erreur. quand je disais changer les parenthéses, c'était justement cela : jai mis accolades, crochets et parenthéses et rien n'a marché. Je vais ré-essayer ! J'ai ré-essayé et j'avais du me tromper dans une accolade ! Merci.
Re: [debutant] RE: Script bash
> > if test [[ "$what_to_do" = "a" ]] || [[ "$what_to_do" = "A" ]] ; > > then > > [...] > > > Ben ça marche pas. Il n'aime pas avoir un "test" avec "ou". > > Pourquoi doubler les crochets ??? > if [ "$what_to_do" = "a" ] || [ "$what_to_do" = "A" ] ; then Le probleme c'est pas les crochets, car que j'en mette un ou deux, ça ne marche pas. Par contre si je supprime la commande "test", comme tu l'as mis dans ton message, là pas de pb, que j'en mette un ou deux ça marche. Bizarre, faut que je relise les comments sur "test". Merci en tout cas. Francois Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com";
Re: [debutant] RE: Script bash
Francois Massonneau wrote: > > > > if test [[ "$what_to_do" = "a" ]] || [[ "$what_to_do" = "A" ]] ; > > > then > > > > [...] > > > > > Ben ça marche pas. Il n'aime pas avoir un "test" avec "ou". > > > > Pourquoi doubler les crochets ??? > > if [ "$what_to_do" = "a" ] || [ "$what_to_do" = "A" ] ; then Où c'est-t-y que t'as vu le doublage des crochets? Un seul suffit. Par contre un piège plus fréquent est qu'entre le crochet et l'expression il FAUT un espace qu'on oublie souvent. Et ton expression devrait plutôt ressembler à ça : [ "$what_to_do" = "a" -o "$what_to_do" = "A" ] L'opérateur "ou" s'écrit "-o" pour la commande test. Rosaire Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com";
Re: [debutant] RE: Script bash
Il me semble que le double crochet ([[ ]]) est utilisé en ksh et zsh avec des && et || à la place des -a et -o du test bash. Fred Le Dimanche 17 Mars 2002 17:44, vous avez écrit : > Francois Massonneau wrote: > > > > if test [[ "$what_to_do" = "a" ]] || [[ "$what_to_do" = "A" ]] ; > > > > then > > > > > > [...] > > > > > > > Ben ça marche pas. Il n'aime pas avoir un "test" avec "ou". > > > > > > Pourquoi doubler les crochets ??? > > > if [ "$what_to_do" = "a" ] || [ "$what_to_do" = "A" ] ; then > > Où c'est-t-y que t'as vu le doublage des crochets? Un seul suffit. Par > contre un piège plus fréquent est qu'entre le crochet et l'expression il > FAUT un espace qu'on oublie souvent. Et ton expression devrait plutôt > ressembler à ça : > > [ "$what_to_do" = "a" -o "$what_to_do" = "A" ] > > L'opérateur "ou" s'écrit "-o" pour la commande test. > Rosaire Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com";
[debutant] RE: script bash efface mon prompt
Je ne comprends pas. J'ai refait la manip loggé en root puis su monUser J'ai refait la manip loggé en monUser puis su J'ai changer le dernier echo par echo "" Et cela passe :o\ Est-ce que Linux peut avoir parfois des comportements...inopportun et aléatoire du genre. Je suppose que si c'est le cas cela est dû à un mauvais paramétrage... Désolé pour le dérangement. Mais si qqn a une idée... bbsc, ism -Message d'origine- De : Ismael Touama [mailto:[EMAIL PROTECTED]] Envoyé : mardi 14 mai 2002 16:54 À : [EMAIL PROTECTED] Cc : [EMAIL PROTECTED] Objet : script bash efface mon prompt Bonjour, Il y a qq tps j'avais le même probleme mais je pensais que cela venait de la manipulation de ma variable PS1, modifiée au mauvais endroit (bashrc). Mntn je l'ai modifié ds .bashrc de mes utilisateur dt root. -- # .bashrc PS1="\[\033[1;36m\][\u@\h \W]#\[\033[0m\] " -- J'ai fais des tests et n'ai plus obtenu de bug graphique notamment en remontant l'historique des commandes avec les fleches du clavier. Mais sur ce script cela recommence: for i in `find / -name '*httpd.conf*'` do echo " "; echo ">>> $i <<<"; ls l- $i; echo " "; done La cmd s'execute bien mais lorsque je remonte l'historique cela efface mon prompt et ne copie pas entierement la derniere cmd (pourtant la commande s'execute sur ). Alors j'ai deux questions : 1. Ce script peut-il intervenir sur le prompt ? (A ce moment où est l'erreur ?) 2. Ai-je bien intervenu sur ma variable PS1 ? QS: Ben je ne comprends pas en quoi l'hhistorique des cmd et le prompt peuvent interférer!!! MERCI A TOUS MERCI POUR TOUT bbsc, ism Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com";