GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je faire en sorte que tcpdump écrive dans un fichier et que la sortie standard affiche les données appropriées?

Voici une manière simple de faire ce que vous voulez :

tcpdump -w - -U | tee somefile | tcpdump -r -

Ce qu'il fait :

  • -w - dit tcpdump pour écrire des données binaires dans stdout
  • -U dit tcpdump pour écrire chaque paquet sur stdout au fur et à mesure qu'il est reçu, plutôt que de les mettre en mémoire tampon et de les sortir en morceaux
  • tee écrit ces données binaires dans un fichier ET dans son propre stdout
  • -r - dit le deuxième tcpdump pour obtenir ses données à partir de son stdin

Depuis tcpdump 4.9.3 4.99.0, le --print option peut être utilisée :

tcpdump -w somefile --print
Wednesday, December 30, 2020, by [email protected], denis and fxl.
  Summary for 4.99.0 tcpdump release
    [...]
    User interface:
      [...]
      Add --print, to cause packet printing even with -w.

Linux
  1. Lire et écrire des données de n'importe où avec la redirection dans le terminal Linux

  2. Comment rediriger la sortie vers un fichier et Stdout sous Linux

  3. Comment obtenir l'entrée et la sortie d'un terminal dans un fichier texte ? ?

  4. Comment rediriger la sortie vers un fichier et stdout

  5. Comment rediriger stderr et stdout vers différents fichiers dans la même ligne de script ?

Comment utiliser Sudo et le fichier Sudoers

Comment enregistrer un fichier dans Vim / Vi et quitter l'éditeur

Script bash :comment écrire des données dans des fichiers texte

Tutoriel Unix Sed :comment écrire dans un fichier à l'aide de Sed

Comment rediriger la sortie de system() vers un fichier ?

Comment puis-je masquer la sortie d'une application shell sous Linux ?