Ngrep

Résolu
Bonjour,

S'il vous plaît je suis en train de faire un travail de captures de requêtes sur plusieurs interfaces réseaux d'un serveur via des scripts shell:

sudo ngrep -lqd eth1 -W byline host $1

sudo ngrep -lqd eth3 -W byline host $1

Alors je voudrais comme ça à chaque lancement du ngrep récupérer le PID correspondant. Car le but est de pouvoir en arrêter un toujours via des scripts sans interrompre l'autre.
jusqu'ici j'utilise :

ps -ef | grep ngrep | awk '{print $pid1}' uniquement après le premier script

sudo ngrep -lqd eth1 -W byline host $1
ps -ef | grep ngrep | awk '{print $pid1}'

le problème c'est qu'il me ressort tous les process ngrep tournants

Merci

2 réponses

  1. Modérateur
    Peux tu nous donner un exemple de sortie de :

    ps -ef | grep ngrep

    ... et nous indiquer lequel tu veux extraire (et sur quel(s) critère(s) tu choisis le PID à extraire) ?

    Bonne chance
    1. la commande "ps -ef | grep ngrep" fournit tous les process ngrep qui tournent.

      J'ai trouvé la méthode :

      sudo ngrep -lqd eth3 -W byline host $1 &
      lastpid=$(echo $!)
      echo $lastpid >>$1_lastpid.txt

      Avec ça le lance un "ngrep" et j'ai le PID associé que je reporte dans un fichier texte. C'était l'objectif.

      Merci pour la réaction