Dialog & gestion des variable

Résolu
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

2 réponses

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    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;

    1
  2. dialog
     
    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
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      dialog_menu ;;
      "Set IP config" );
      Euh... c'est quoi c'est 2 commandes ? Des fonctions ?
      C'est tiré d'un script shell (bash ou autres) ?
      0
    2. dialog
       
      Holala je n'y comprends plus rien !

      Voici le code afin que tu y comprennes peut etre plus que moi !

      code effacé car tronqué, voir ci-dessous, merci
      0
    3. dialog
       
      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
      0
    4. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Moi aussi j'ai du mal à comprendre le sens de ton script ;-(

      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 ?
      0
    5. dialog
       
      je pense il faut que tu lises le 2eme post, car le premier était tronqué dans le nano
      Il n'y a pas de $ a cet endroit
      Merci
      0