重定向输出并保存到远程服务器?

重定向输出并保存到远程服务器?

是否有可能重定向一些 stdout 并将数据保存到远程服务器上的文件中?下面是一个糟糕的例子,它肯定不起作用……

sudo tcpdump ... 2>&1 | ssh ... user@hostname -

或者也许使用 netcat 而不是 SSH?

sudo tcpdump ... 2>&1 | nc <host> <port> -

像这样但这个解决方案对我来说不起作用。

答案1

当然,如果您使用 ssh 命令写入文件:

sudo tcpdump ... 2>&1 | ssh ... user@hostname tee /some/file
sudo tcpdump ... 2>&1 | ssh ... user@hostname 'cat > /some/file'

使用nc,你必须在服务器上安装一些监听程序:

# on server
nc -l <port> > /some/file
# on client
sudo tcpdump ... 2>&1 | nc <host> <port>

相关内容