#1 Le 23/06/2010, à 16:41
- GrindeR
[projet] script sauvegardes multiple zenity
Bonjour à toutes et à tous,
Je ne suis pas expert en script, mais je m'aide beaucoup de http://abs.traduc.org/abs-fr/, ainsi que des recherches sur le forum.
j'ai déjà une bonne base (je pense) de mon projet,
mais je rencontre des difficultées sur un menu
ListMenu() {
BCK_CHOIX=`zenity --width=600 --height=355 --title="Profil de Sauvegarde" --text="quelle(s) sauvegarde(s) voulez-vous éffectuer?
<span color=\"red\">Description:</span>
Documents: sauvegarde vos documents das votre répertoire personne ${HOME}
Configurations: sauvegarde vos configurations (fichiers cachés) dans votre répertoire personnel ${HOME}
Ordinateur: sauvegarde les configurations de l'ordinateur dans ${PWD_HOST}" \
--list --checklist --multiple --column "Choix" --column "Profil" \
TRUE "Documents" \
TRUE "Configurations" \
TRUE "Ordinateur" \
`
case ${BCK_CHOIX} in
Documents)
cd ${PWD_DOC}
ls -1X --file-type | grep -v 'lost+found' > ${PWD_LOG}/${LIST_DOC} # documents du répertoire personnel de l'utilisateur courant
;;
Configurations)
cd ${PWD_DOC}
ls -1AX --file-type | grep -Ev '.cache|.gvfs|.thumbnails' | sed '/^\./!d' > ${PWD_LOG}/${LIST_CONF} # fichiers/dossiers de configuration de la session de l'utilisateur
;;
Ordinateur)
cd ${PWD_HOST}
ls -1AX --file-type > ${PWD_LOG}/${LIST_HOST} # fichiers/dossiers de configuration de l'ordinateur
;;
*)
zenity --error --text "<span color=\"red\">Vous n'avez choisi aucune sauvegarde à réaliser!!</span>"
#exit 1
;;
esac
cd ${PWD_LOG}
sed -i 's/[*|@]$//g' * # suppression des caractères parasite générer par l'opt --file-type de ls
}
Vous me direz surement que rien en particulier ne cloche, MAIS si, ce qui me gêne c'est l'options de zenity
--multiple
que j'aimerais voir fonctionner car si je coche plus d'une case je reçois mon "zenity --error..." de fin de menu!!!
je ne comprend pas, j'ai raté quelque chose, ou bien il y a quelque chose en plus à faire.
toute suggestions est la bienvenue
edit modo : voilà, c'est déplacé. La prochaine fois tu pourras utiliser la fonction signaler juste ici ↓
Dernière modification par nesthib (Le 23/06/2010, à 20:08)
Informaticien où Troll, j'ai choisis les deux!
MountyHall, la Terre des Trõlls
Hors ligne
#2 Le 24/06/2010, à 17:59
- beware
Re : [projet] script sauvegardes multiple zenity
Bonjour,
je pense que tu aurais du regarder le retour de la commande zenity. Car elle retourne une chaine du genre:
bla|bla|bla
Donc ton case, marche trés bien car rien ne correspond à ça.
Tu dois mettre en forme la chaine. Je te propose :
[..]
BCK_CHOIX=$( echo $BCK_CHOIX | sed 's/|/ /g' )
for i in $BCK_CHOIX
do
case $i in
Documents)
[..]
esac
done
Et voila, j'espére que ca t'aidera
Hors ligne
#3 Le 24/06/2010, à 18:25
- Hizoka
Re : [projet] script sauvegardes multiple zenity
Comme l'a bien expliqué beware, ton retour sera de type : Documents|Configurations|Ordinateur, il te faut modifier le séparateur.
Il se trouve que zenity te le propose : --separator " "
Ainsi pas besoin du sed de beware.
Par contre maintenant que tu te retrouve avec plusieurs valeurs, il faut les traiter les unes après les autres, donc mettre ton case dans une boucle for.
perso j'arais fait :
BCK_CHOIX=$(zenity --width=600 --height=355 --title="Profil de Sauvegarde" --text="quelle(s) sauvegarde(s) voulez-vous éffectuer?
<span color=\"red\">Description:</span>
Documents: sauvegarde vos documents das votre répertoire personne ${HOME}
Configurations: sauvegarde vos configurations (fichiers cachés) dans votre répertoire personnel ${HOME}
Ordinateur: sauvegarde les configurations de l'ordinateur dans ${PWD_HOST}" \
--list --checklist --column "Choix" --column "Profil" --separator " " \
TRUE "Documents" \
TRUE "Configurations" \
TRUE "Ordinateur")
virer les ` et mettre $( ), et virer multiple qui ne sert à rien... tu es en checklist, multiple ne sert pas dans ce cas la.
Regarde ma signature, tu verras un utilitaire zenity
Dernière modification par Hizoka (Le 24/06/2010, à 18:29)
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#4 Le 24/06/2010, à 18:33
- beware
Re : [projet] script sauvegardes multiple zenity
comme je connais pas ( ou trés peu ) zenity, je savais pas qu'il proposait directement une option 'separator' ce qui simplifie les choses.
Hors ligne
#5 Le 24/06/2010, à 20:30
- GrindeR
Re : [projet] script sauvegardes multiple zenity
j'ai pris compte de vos remarques,
et du coup ça fonctionne nikel!
Merci à vous beware et Hizoka
ainsi je vais bientôt pouvoir proposer un v 0.1
Informaticien où Troll, j'ai choisis les deux!
MountyHall, la Terre des Trõlls
Hors ligne
#6 Le 25/06/2010, à 02:46
- Hizoka
Re : [projet] script sauvegardes multiple zenity
ok, hésite pas à poser des questions sur zenity, je me débrouille pas trop mal après le ta que j'ai fait dessus.
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#7 Le 25/06/2010, à 11:27
- GrindeR
Re : [projet] script sauvegardes multiple zenity
Oui, je suis déjà allé faire un tour sur ton post sur ton programme "zenitor" avec le lien sur ta signature avant de commencer mon projet et je l'utilise un peu du coup.
Tu dis que tu maitrise pas trop mal , je dirais plutôt comme un chef!
Informaticien où Troll, j'ai choisis les deux!
MountyHall, la Terre des Trõlls
Hors ligne