#1 Le 18/12/2009, à 11:46
- Totof08170
zenity
Bonjours ,
je ne sais pas si je suis dans la bonne section pour ce sujet, mais bon.
Voila, j'ai fait un petit script shell qui ping les IP qui sont dans un fichier nommer IP.txt et qui dit combient de machine sont allumer et combient n'y sont pas.
J'aimerais modifier ce script en mettant une boite de dialogue zenity. J'ai vue la liste déroulante suivante :
zenity --entry --title="Jour" --text="Veuillez indiquer le jour de la semaine" Lundi Mardi Mercredi "Autre jour..."
Mais lorsque l'on clique sur un choix, le choix s'affiche dans le terminal, j'aimerais bien mémoriser le choix et faire un teste sur celui si pour donner ce qui va avec.
Je vous met mon script de départ si vous voulez
#!/bin/bash
IP=`ifconfig | grep -E 'inet add?r:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`
MASK=`ifconfig | grep -E 'inet add?r:'| grep "$IP" | cut -d: -f4`
GATEWAY=`route -n | grep -E "^0.0.0.0 +[[:digit:].]+ +0.0.0.0" | awk '{print $2}'`
DNS=`grep nameserver /etc/resolv.conf | head -1 | awk '{print $2}'`
IP_NET=`wget http://checkip.dyndns.org/ -O - -o /dev/null | cut -d: -f 2 | cut -d\< -f 1`
ip=$(cat ip.txt )
ok=0
nok=0
black="\033[30m"
red="\033[31m"
green="\033[32m"
yellow="\033[33m"
blue="\033[34m"
magenta="\033[35m"
cyan="\033[36m"
white="\033[37m"
echo -e "\n"
echo -e " $blue ##################### "
echo -e " $blue # $red Ping $blue #"
echo -e " $blue# $red v3 $blue #"
echo -e " $blue # $red by Totof $blue #"
echo -e " $blue #####################"
echo -e " \n "
echo " " " VOS PARAMETRE IP "
echo "#############################################"
echo "# #"
echo "# Adresse IP Local : $IP" " #"
echo "# Masque : $MASK #"
echo "# Passerelle : $GATEWAY #"
echo "# DNS : $DNS #"
echo "# Adresse IP Internet :$IP_NET #"
echo "# #"
echo "#############################################"
echo -e "\n"
echo -e "Ping des machines de ip.txt en cours"
echo -e "\n"
for mot in $ip
do
result=$(ping $mot -c 1)
status=$(echo $result | grep "100% packet loss" )
if [ -z "$status" ]
then
echo -e " $magenta => Etat de la machine $mot : $black $green OK $black \n "
let ok=ok+1
else
echo -e " $magenta => Etat de la machine $mot : $black $red Non OK $black \n "
let nok=nok+1
fi
done
echo -e $blue"Ping des machines ip.txt terminé"
echo -e "\n"
echo -e " $blue##################################### "
echo -e " $blue # $red Fin du script $blue #"
echo -e " $blue# $red Nb de machine OK : $ok $blue #"
echo -e " $blue # $red Nb de machine Non OK : $nok $blue #"
echo -e " $blue #####################################$black"
Hors ligne
#2 Le 18/12/2009, à 12:02
- sensini
Re : zenity
Salut, j'ai pas le courage de tout lire, mais il suffit que tu récupères la valeur dans une variable:
reponse=$(zenity --entry --text "blabla?" --entry-text "defaut")
echo $reponse
http://doc.ubuntu-fr.org/aptitude
http://bepo.fr
Pensez à chercher sur un moteur de recherche avant de demander http://google.fr/ ;)
Hors ligne
#3 Le 18/12/2009, à 12:20
- Totof08170
Re : zenity
il y avais pas besoin de tout lire ^^
Pourquoi j'y ai pas penser u_u", je débute dans le script shell, j'en fait en cours depuis 1 mois environ
Hors ligne