gpt4 book ai didi

linux - Bash 终端重定向到另一个终端

转载 作者:IT王子 更新时间:2023-10-29 00:36:46 26 4
gpt4 key购买 nike

我有 netcat 端口监听端口 1501,我想将该端口上接收到的输入通过管道传输到新的终端窗口。我知道这是个坏主意,因为基本上那个端口上的任何人都可以控制机器,但我想弄清楚是否可以这样做。任何人都知道如何。到目前为止,我已经尝试过了。

数控 -l 1500 | xterm或者数控 -l 1500 | xterm -e "窗口名称"

还尝试以简单的方式重定向到 gnome-terminal。我能做到

数控 -l 1500 | grep "SOMEKEYWORD"成功。

有什么想法吗?-TJ

最佳答案

你有两个问题。首先是 xtermgnome-terminal 不是提供提示和接受命令的程序——它们只是将键盘和屏幕连接到该程序的一种方式,这是您的 shell(通常是 /bin/bash)。所以,实际上是您要连接到 netcat 的 bash

其次,您需要的不仅仅是单向管道,这是您通过 | 获得的。如果您使用:

nc -l -p 1500 | /bin/bash

那么你将只有一个管道用户 bash - 他们将能够提供输入,但不会查看任何输出。或者,如果您这样做:

/bin/bash | nc -l -p 1500

那么相反的情况将适用 - 你将只有一个管道用户来自 bash。用户将看到 bash 的输出,但无法提供任何输入。

幸运的是,netcat 支持为另一个命令创建双向管道(实际上是两个管道)的选项:

nc -l -p 1500 -e /bin/bash

这将执行您想要的操作 - 但请注意 bash 不会显示提示,因为它将以“非交互”模式运行。

哦,还有一件事 - 是的,这是一个真的坏主意。

关于linux - Bash 终端重定向到另一个终端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6497694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com