Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/04/2006, à 17:20

alexises

un petit scripte

bon je suis en train de faire un scripte mais j'ai un problaime

#!/bin/sh
echo bienvenu dans ce petit scripte qui vas vous facilité la mise a jour de votre system
echo
echo
echo
echo
echo que voulez vous faire
echo
echo
echo 1\) mise a jour des dépauts
echo 2\) mise a jour intélégente
echo 3\) mise a jour des dépots + mise a jour ijntéligente
echo 4\) mise a jour 
echo 5\) mise a jour des depots + mise a jour 
echo
echo
echo merci de choisir la bonne option
read nombre


	if [$nombre = 1] then
{
sudo apt-get update
}
		if  [$nombre = 2] then
{
sudo apt-get dish-upgrade
			if  [$nombre = 3] then
{
sudo apt-get update
sudo apt-get dish-upgrade
}
				if  [$nombre = 4] then
{
sudo apt-get upgrade
}

					if  [$nombre = 5] then
{
sudo apt-get update
sudo apt-get upgrade
}
						if 
{
echo aucune entré assosié
echo veullez entré le mots de passe root
read motsdepass
}

l'éreur retourné
/home/alexises/m.sh: line 50: syntax error: unexpected end of file


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#2 Le 15/04/2006, à 17:41

papadon

Re : un petit scripte

c'est tof !
il donne une erreur en ligne 50 et il n'y en a que 48 ??? big_smile

Hors ligne

#3 Le 15/04/2006, à 17:45

alexises

Re : un petit scripte

il dois y avoir 2 ligne bleuche a la fin mais je fait quoi ?


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#4 Le 15/04/2006, à 17:45

mulima

Re : un petit scripte

heu ... des guillements pour chaque commande echo ne ferais surement pas de mal ;-)
et un p'ti conseil ergonomique

pour une saisie utilisateur,  passe par la commande "zenify" ... c top pratique ;-)

Dernière modification par mulima (Le 15/04/2006, à 17:47)

Hors ligne

#5 Le 15/04/2006, à 17:52

alexises

Re : un petit scripte

bon mais pour mon éreur


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#6 Le 15/04/2006, à 17:52

mulima

Re : un petit scripte

les guillemets ;-)

Hors ligne

#7 Le 15/04/2006, à 17:54

alexises

Re : un petit scripte

j'ai mis des guimmets a tout les echo et enlevé le / au 1/)


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#8 Le 15/04/2006, à 17:55

mulima

Re : un petit scripte

et puis ca aussi ;-) comme conseil :
http://cyberzoide.developpez.com/unix/shell.php3

Hors ligne

#9 Le 15/04/2006, à 18:01

alexises

Re : un petit scripte

heu donc je remet le code

#!/bin/sh
echo "bienvenu dans ce petit scripte qui vas vous facilité la mise a jour de votre system"
echo
echo
echo
echo
echo "que voulez vous faire"
echo
echo
echo "1) mise a jour des dépauts"
echo "2) mise a jour intélégente"
echo "3) mise a jour des dépots + mise a jour ijntéligente"
echo "4) mise a jour"
echo "5) mise a jour des depots + mise a jour "
echo
echo
echo "merci de choisir la bonne option"
read nombre


	if [$nombre = 1] then
{
sudo apt-get update
}
		if  [$nombre = 2] then
{
sudo apt-get dish-upgrade
			if  [$nombre = 3] then
{
sudo apt-get update
sudo apt-get dish-upgrade
}
				if  [$nombre = 4] then
{
sudo apt-get upgrade
}

					if  [$nombre = 5] then
{
sudo apt-get update
sudo apt-get upgrade
}
						else 
echo "aucune entré assosié"
echo "veullez entré le mots de passe root"
read motsdepass
fi
done

éreur :

/home/alexises/m.sh: line 43: syntax error near unexpected token `else'
/home/alexises/m.sh: line 43: `                                         else '
alexises@ubuntu:~$

/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#10 Le 15/04/2006, à 18:04

Hells_Dark(off)

Re : un petit scripte

#!/bin/sh
echo Bienvenue dans ce petit script qui va vous faciliter la mise a jour de votre système
echo
echo
echo
echo
echo Que voulez vous faire ?
echo
echo
echo 1\) mise à jour des dépôts
echo 2\) mise à jour intelligente
echo 3\) mise à jour des dépots + mise à jour intelligente
echo 4\) mise à jour
echo 5\) mise à jour des depots + mise à jour
echo
echo
echo Merci de choisir la bonne option
read nombre


    if [$nombre = 1] then
{
sudo apt-get update
}
        if  [$nombre = 2] then
{
sudo apt-get dish-upgrade
            if  [$nombre = 3] then
{
sudo apt-get update
sudo apt-get dish-upgrade
}
                if  [$nombre = 4] then
{
sudo apt-get upgrade
}

                    if  [$nombre = 5] then
{
sudo apt-get update
sudo apt-get upgrade
}
                        if
{
echo aucune entrée assosiée
echo veuillez entrer le mot de passe root
read motsdepass
}

JE n'arrange strictement rien à ton problème.
C'est juste que je n'ai pas pu m'en empecher.. neutral

#11 Le 15/04/2006, à 18:06

Aelor

Re : un petit scripte

Pourquoi il y a des echos vides ?


Ex Roane.

Ruby, le langage qui tue : http://rubyfr.org

Hors ligne

#12 Le 15/04/2006, à 18:07

alexises

Re : un petit scripte

pour passé des lignes


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#13 Le 15/04/2006, à 18:08

mulima

Re : un petit scripte

faut faire des

if
....
then
....
elif
...
then
...
elif
...
then
...
fi


m'enfin un "case" serait surement plus adapté !
"Structure conditionnelle à choix multiples : suivant la valeur de l'expression chaine, on peut faire exécuter un large panel d'instructions."

Dernière modification par mulima (Le 15/04/2006, à 18:10)

Hors ligne

#14 Le 15/04/2006, à 18:12

nknico

Re : un petit scripte

Et puis dist-upgrade à la place de dish-upgrade ça ira mieux...


Nico

Hors ligne

#15 Le 15/04/2006, à 18:20

alexises

Re : un petit scripte

merci mais comment on suprime les variables car il reprend une encienne variable et ne l'écrase pas


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#16 Le 15/04/2006, à 18:27

mulima

Re : un petit scripte

remet ton code pour voir

si tu es dans un case faut faire un break je pense ...

plus poussé comme aide :
http://www.tldp.org/LDP/abs/html/testbranch.html

Dernière modification par mulima (Le 15/04/2006, à 18:29)

Hors ligne

#17 Le 15/04/2006, à 18:28

alexises

Re : un petit scripte

#!/bin/sh
echo "bienvenu dans ce petit scripte qui vas vous facilité la mise a jour de votre system"
echo
echo
echo
echo
echo "que voulez vous faire"
echo
echo
echo "1) mise a jour des dépauts"
echo "2) mise a jour intélégente"
echo "3) mise a jour des dépots + mise a jour ijntéligente"
echo "4) mise a jour"
echo "5) mise a jour des depots + mise a jour "
echo
echo
echo "merci de choisir la bonne option"
read nombre


	if [$nombre = 1] 
{
sudo apt-get update
}
		then  [$nombre = 2]
{
sudo apt-get dist-upgrade
}
			elif  [$nombre = 3] 
{
sudo apt-get update
sudo apt-get dist-upgrade
}
				then [$nombre = 4] 
{
sudo apt-get upgrade
}
					elif  [$nombre = 5] 
{
sudo apt-get update
sudo apt-get upgrade
}
						then
 
echo "aucune entré assosié"
echo "veullez recomencé"
read nombre
fi

/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#18 Le 15/04/2006, à 18:29

Aelor

Re : un petit scripte

pour passer der lignes c'est echo "\n" \n étant un caractère de retour à la ligne


Ex Roane.

Ruby, le langage qui tue : http://rubyfr.org

Hors ligne

#19 Le 15/04/2006, à 18:34

alexises

Re : un petit scripte

sinpn sa foire encore ou ?


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#20 Le 15/04/2006, à 18:34

mulima

Re : un petit scripte

je pense vraiment qu'il faut faire un case

la structure if then else est binaie comme indiqué ci dessous :-s

f condition1
then instruction1
elif condition2
then instruction2
fi

elif est équivalent à else if. Ainsi l'instruction2 n'est exécutée que si condition1 et condition2 sont toutes deux vraies en même temps.

Hors ligne

#21 Le 15/04/2006, à 18:46

alexises

Re : un petit scripte

je ne comprend pas la case


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#22 Le 15/04/2006, à 18:55

mulima

Re : un petit scripte

hop ! :-)

#!/bin/sh

echo -e "que voulez vous faire \n\n"
echo "1) mise a jour des dépauts"
echo "2) mise a jour intélégente"
echo "3) mise a jour des dépots + mise a jour ijntéligente"
echo "4) mise a jour"
echo -e "5) mise a jour des depots + mise a jour \n\n"
echo "merci de choisir la bonne option"

#demande utilisateur
read nombre

case "$nombre" in
   1 ) sudo apt-get update;;
   2 ) sudo apt-get dist-upgrade;;
   3 ) sudo apt-get update ; sudo apt-get dist-upgrade;;
   4 ) sudo apt-get upgrade;;
   5 ) sudo apt-get update ; sudo apt-get upgrade;;
esac

Dernière modification par mulima (Le 15/04/2006, à 19:02)

Hors ligne

#23 Le 15/04/2006, à 19:41

alexises

Re : un petit scripte

merci


/!\ aveugle ne pas matraquer /!\
¨¨¨                                       ¨¨¨

il est ou le bouton poster ?

Hors ligne

#24 Le 15/04/2006, à 23:03

hells_dark

Re : un petit scripte

Hells_Dark(off) a écrit :

#!/bin/sh
echo Bienvenue dans ce petit script qui va vous faciliter la mise a jour de votre système
echo
echo
echo
echo
echo Que voulez vous faire ?
echo
echo
echo 1\) mise à jour des dépôts
echo 2\) mise à jour intelligente
echo 3\) mise à jour des dépots + mise à jour intelligente
echo 4\) mise à jour
echo 5\) mise à jour des depots + mise à jour
echo
echo
echo Merci de choisir la bonne option
read nombre


    if [$nombre = 1] then
{
sudo apt-get update
}
        if  [$nombre = 2] then
{
sudo apt-get dish-upgrade
            if  [$nombre = 3] then
{
sudo apt-get update
sudo apt-get dish-upgrade
}
                if  [$nombre = 4] then
{
sudo apt-get upgrade
}

                    if  [$nombre = 5] then
{
sudo apt-get update
sudo apt-get upgrade
}
                        if
{
echo aucune entrée assosiée
echo veuillez entrer le mot de passe root
read motsdepass
}

Je n'arrange strictement rien à ton problème.
C'est juste que je n'ai pas pu m'en empecher.. neutral

Autant pour moi. Je n'avais pas compris la raison de ces quelques fautes d'orthographe hmm
L'habitude des gens qui font des fautes pour écrire "plus vite" probablement.

Dernière modification par hells_dark (Le 15/04/2006, à 23:07)


"You caught me at a strange time in my life."
devianArt - site perso

Hors ligne