[Ubuntu-QC] Aide pour déboguer un petit script.sh
Lami René
lami at webestrie.com
Ven 2 Avr 19:31:40 BST 2010
Bonjour,
J'ai produit le tutoriel «
http://doc.ubuntu-fr.org/points_de_restauration_pour_un_systeme_linux »
et une personne à ajouté une section Script «
http://doc.ubuntu-fr.org/points_de_restauration_pour_un_systeme_linux#script
», ce que j'apprécie grandement.
Je ne connais pas la programmation de script et il y a un petit bogue
dans le script, alors pourriez-vous m'aider ?
Avec bash, le message d'erreur est le suivant :
rene at DV9700:~/sda6$ bash ./pr.sh
: commande introuvable
»pr.sh: line 13: Erreur de syntaxe près du symbole inattendu « in
'/pr.sh: line 13: ` case "$touche1" in
Avec sh, le message d'erreur est le suivant :
rene at DV9700:~/sda6$ sh ./pr.sh
: not found clear
./pr.sh: 13: Syntax error: word unexpected (expecting "in")
rene at DV9700:~/sda6$
Le script est le suivant :
#!/bin/bash
clear
while [ 1 -eq 1 ]
do
if ls ~/PointDeRestauration
then
echo " 1) Créer un point de restauration "
echo " 2) Restaurer un point "
echo " Taper le numéro de l'action que vous souhaitez ou CTRL-C
pour quitter ce script : "
read touche1
case "$touche1" in
1
jour=$(date +%d)
mois=$(date +%m)
annee=$(date +%y)
dpkg --get-selections >
~/PointDeRestauration/$annee$mois$jour
echo " Point de restauration "+
~/PointDeRestauration/$annee$mois$jour +" est créé avec succès !"
;;
2
ls ~/PointDeRestauration/*
echo " Quelle est la date de point de restauration
souhaitez-vous utiliser ? (AAMMJJ)"
read touche2
sudo dpkg --clear-selections
sudo dpkg --set-selections < ~/PointDeRestauration/$touche2
sudo apt-get dselect-upgrade
echo " Votre système a été restauré avec succès !"
;;
esac
else
mkdir ~/PointDeRestauration
fi
done
Je crois comprendre qu'il y a un problème avec la variable « touche1 »
et le paramètre « in » de la commande « case » !
Merci d'avance pour tout aide !
L'ami René
P.-S. Je suis programmeur analyste.
Plus d'informations sur la liste de diffusion Ubuntu-quebec