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 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 smile : --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