Dialog & gestion des variable
Résolu
dialog
-
dialog -
dialog -
Bonjour à tous,
Je suis en train d'essayer de faire un dialog qui lancerait tcpdump avec des variables.
En effet, avec dialog je demande l'addr ip que j'essaie de mettre en variable pour l'appliquer à tcpdump.
Voici mon code:
dialog_menu ;;
"Tcpdump" );
dialog --stdout --inputbox "Entrer IP" 10 60 > $ip
tcpdump eth0 $ip -w $ip.pcap
dialog --stdout --clear --msgbox "Capture en cours" 10 60 ;
read;
En fait j'ai essayé de mettre ip en variable, mais cela ne fonctionne pas!
Je suis preneur pour toute idée !
Merci pour votre aide
Je suis en train d'essayer de faire un dialog qui lancerait tcpdump avec des variables.
En effet, avec dialog je demande l'addr ip que j'essaie de mettre en variable pour l'appliquer à tcpdump.
Voici mon code:
dialog_menu ;;
"Tcpdump" );
dialog --stdout --inputbox "Entrer IP" 10 60 > $ip
tcpdump eth0 $ip -w $ip.pcap
dialog --stdout --clear --msgbox "Capture en cours" 10 60 ;
read;
En fait j'ai essayé de mettre ip en variable, mais cela ne fonctionne pas!
Je suis preneur pour toute idée !
Merci pour votre aide
A voir également:
- Dialog & gestion des variable
- Logiciel gestion locative gratuit excel - Télécharger - Comptabilité & Facturation
- Logiciel gestion photo gratuit - Guide
- Gestion des fichiers - Télécharger - Gestion de fichiers
- Gestion autorisation application android - Guide
- Logiciel gestion cabinet médical gratuit - Télécharger - Organisation
2 réponses
Salut,
dialog_menu ;;
"Tcpdump" );
IP=$(dialog --stdout --inputbox "Entrer IP" 10 60)
tcpdump eth0 ${IP} -w ${IP}.pcap
dialog --stdout --clear --msgbox "Capture en cours" 10 60 ;
read;
Salut Zipe31,
Merci cela fonctionne très bien !
Par contre, j'ai essayé plusieurs variables, mais il me met une erreur de symbole apres le ; du code ci-dessous:
dialog_menu ;;
"Set IP config" );
IPADDR=$(dialog --stdout --inputbox "Enter eth0 network IP" 10 60)
IPSUB=$(dialog --stdout --inputbox "Enter subnet mask" 10 60)
IPGW=$(dialog --stdout --inputbox "Enter Gateway" 10 60)
IPDNS=$(dialog --stdout --inputbox "Enter DNS" 10 60)
/sbin/ifdown eth0;
echo nameserver ${IPDNS} > /etc/resolv.conf;
/sbin/ifconfig eth0 ${IPADDR} ${IPSUB};
/sbin/route add default gw ${IPGW};
/sbin/ifup eth0;
dialog --stdout --clear --msgbox "Network Configuration Success" 10 60;
read;
J'ai vérifié dans le menu title, et l'appel correspond bien. Qu'ai-je loupé ?
Merci pour ton aide
Merci cela fonctionne très bien !
Par contre, j'ai essayé plusieurs variables, mais il me met une erreur de symbole apres le ; du code ci-dessous:
dialog_menu ;;
"Set IP config" );
IPADDR=$(dialog --stdout --inputbox "Enter eth0 network IP" 10 60)
IPSUB=$(dialog --stdout --inputbox "Enter subnet mask" 10 60)
IPGW=$(dialog --stdout --inputbox "Enter Gateway" 10 60)
IPDNS=$(dialog --stdout --inputbox "Enter DNS" 10 60)
/sbin/ifdown eth0;
echo nameserver ${IPDNS} > /etc/resolv.conf;
/sbin/ifconfig eth0 ${IPADDR} ${IPSUB};
/sbin/route add default gw ${IPGW};
/sbin/ifup eth0;
dialog --stdout --clear --msgbox "Network Configuration Success" 10 60;
read;
J'ai vérifié dans le menu title, et l'appel correspond bien. Qu'ai-je loupé ?
Merci pour ton aide
Le voici en entier
#!/bin/bash
setterm -blank 0
function dialog_menu {
dialog --title " Configuration Console " --menu "Please choose the action you want to proceed :" 30 65 15 "IP configuration" "Current Network configuration" "PCAP generation" "Generate PCAP" "USB Mount" "Mounting capture USB device" "UMount USB" "UMouting USB device" Console "To go back to command line" 2>~/tmp ;
menuitem='cat ~/tmp'
opt=$?
case $menuitem in
dialog_menu ;;
"IP configuration" ) var='ifconfig';
dialog --title 'IP Configuration' --backtitle 'Display Networks' --infobox "$var" 30 80;
dialog_menu ;;
"PCAP generation" );
IP=$(dialog --stdout --inputbox "Entrer IP" 10 60)
tcpdump eth0 ${IP} -w ${IP}.pcap
dialog --stdout --clear --msgbox "Capture en cours" 10 60 ;
read;
dialog_menu ;;
"USB Mount") var='/bin/mount /media/usb';
dialog --title "USB Initialisation" --backtitle "Mounting USB" --infobox "$var" 5 15;
dialog --title 'USB Status' --msgbox 'Mounting Successful\n' 10 25;
dialog_menu ;;
"UMount USB") var='/bin/umount /media/usb';
dialog --title "USB UnInitialisation" --backtitle "UnMounting USB" --infobox "$var" 5 15;
dialog --title 'USB Status' --msgbox 'UnMounting Successful\nYou can extract the USB device' 10 25;
dialog_menu ;;
Exit) clear;
exit;;
esac
clear
}
dialog_menu
rm ~/tmp
#!/bin/bash
setterm -blank 0
function dialog_menu {
dialog --title " Configuration Console " --menu "Please choose the action you want to proceed :" 30 65 15 "IP configuration" "Current Network configuration" "PCAP generation" "Generate PCAP" "USB Mount" "Mounting capture USB device" "UMount USB" "UMouting USB device" Console "To go back to command line" 2>~/tmp ;
menuitem='cat ~/tmp'
opt=$?
case $menuitem in
dialog_menu ;;
"IP configuration" ) var='ifconfig';
dialog --title 'IP Configuration' --backtitle 'Display Networks' --infobox "$var" 30 80;
dialog_menu ;;
"PCAP generation" );
IP=$(dialog --stdout --inputbox "Entrer IP" 10 60)
tcpdump eth0 ${IP} -w ${IP}.pcap
dialog --stdout --clear --msgbox "Capture en cours" 10 60 ;
read;
dialog_menu ;;
"USB Mount") var='/bin/mount /media/usb';
dialog --title "USB Initialisation" --backtitle "Mounting USB" --infobox "$var" 5 15;
dialog --title 'USB Status' --msgbox 'Mounting Successful\n' 10 25;
dialog_menu ;;
"UMount USB") var='/bin/umount /media/usb';
dialog --title "USB UnInitialisation" --backtitle "UnMounting USB" --infobox "$var" 5 15;
dialog --title 'USB Status' --msgbox 'UnMounting Successful\nYou can extract the USB device' 10 25;
dialog_menu ;;
Exit) clear;
exit;;
esac
clear
}
dialog_menu
rm ~/tmp
Moi aussi j'ai du mal à comprendre le sens de ton script ;-(
Déjà ça :
Que fait ce "$" en fin de ligne ? Normalement il devrait y avoir une quote double là non ?
Et puis ta fonction elle englobe tout ton script, c'est normal ?
Déjà ça :
function dialog_menu {
dialog --title " Configuration Console " --menu "Please choose the action you want to proceed :" 30 65 15 "IP configuration" "Current Network $
Que fait ce "$" en fin de ligne ? Normalement il devrait y avoir une quote double là non ?
Et puis ta fonction elle englobe tout ton script, c'est normal ?