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 21/05/2012, à 17:10

justplop

Bash opérateur && et session ssh

Bonjour à tous et à toutes !
Merci à ceux qui liront mon problème!

Voici ma petite énigme que je n'arrive pas à résoudre pour le moment!

Je réalise un script en bash pour lancer tcpdump sur plusieurs interfacses sur des serveurs distants.
--------------------------------------
for ....
do
    ...
    ssh $server setsid "tcpdump -i $eth src X.X.X.X and ether src Y.Y.Y.Y.Y.Y -w FILE -c 1"
done
--------------------------------------
Cette ligne fonctionne, j'arrive bien à lancer mes tcpdump sur les différentes interfaces de mon serveur
(Pas d'erreur sur mon script et les processus sont bien lancés)

Par contre j'aimerais que lorsqu'un paquet match sur la règle d'un tcpdump, que la capture s'arrête et me scp mon pcap (FILE):
J'ai donc ajouté:
--------------------------------------
   ssh $server setsid "tcpdump -i $eth src X.X.X.X and ether src Y.Y.Y.Y.Y.Y -w FILE -c 1 && scp FILE login@host:/path
--------------------------------------

Mais du coup tcpdump ne s'execute plus sagement en arrière plan et le premier tcpdump reste affiché au prompt empechant le script de s'éxécuter entièrement.

(Ce problème apparaît uniquement avec la session ssh)
J'ai déja éssayé de mettre le processus en arrière plan avec
  nohup tcpdump ... && ...
  tcpdump ... & && ...

J'espere avoir été clair et que quelqu'un poura m'aider !

Merci d'avance !

Hors ligne

#2 Le 22/05/2012, à 16:16

dzecniv

Re : Bash opérateur && et session ssh

Salut,
As-tu essayé
tcpdump && scp & <---- le & à la fin met en arrière plan toute la ligne. C'est puissant la programmation parallèle en bash !
?

Hors ligne