Запуск tcpdump в фоновом режиме linux - PullRequest
0 голосов
/ 19 марта 2020

linux (gentoo) и linux (redhat on AWS free)

Я являюсь членом группы pcap и могу запускать tcpdump как пользователь, не являющийся root.

Я пытаюсь запустить скрипт запуска tcpdump в фоновом режиме и отправить вывод в текстовый файл temp.txt Мой скрипт создаст файл с именем temp.txt, но / usr / bin / tcpdump -tttt не будет писать к этому. Я могу запустить скрипт без nohup.

/usr/sbin/tcpdump -c 10 -tttt > `pwd`/temp.txt

Пожалуйста, скажите мне, почему nohup не будет работать?
Вот мой скрипт:

#!/bin/bash
#tpd-txt.sh
nohup /usr/sbin/tcpdump -c 10 -tttt > `pwd`/temp.txt > /dev/null 2>&1 &


1 Ответ

0 голосов
/ 20 марта 2020

Попробуйте

nohup /usr/sbin/tcpdump -c 10 -tttt 2>&1  >./temp.txt &

Я предполагаю, что вы хотите перенаправить стандартную ошибку на вывод, чтобы ее можно было зафиксировать в журналах.

Ниже приведено краткое руководство по перенаправлению вывода в bash.

1>filename
 # Redirect stdout to file "filename."
1>>filename
  # Redirect and append stdout to file "filename."
2>filename
  # Redirect stderr to file "filename."
2>>filename
  # Redirect and append stderr to file "filename."
&>filename
  # Redirect both stdout and stderr to file "filename."
2>&1
  # Redirects stderr to stdout.
  # Error messages get sent to the same place as standard output.
...