Pages : 1
#1 Le 21/05/2012, à 16: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, à 15: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