读取和写入同一个netcat tcp连接

2024-01-09

假设我写入 netcat 连接:

tail -f ${file} | nc localhost 7050 | do_whatever | nc localhost 7050

这里发生的是我们有两个套接字连接,用于执行一些请求/响应。但由于一些原因,这并不理想。

我想做的是重用相同的连接来读取和写入。

有谁知道如何重用一个 netcat 连接?


在 UNIX 中执行此操作的正确方法是使用后管。您可以按如下方式操作:

首先,创建一个管道:mknod bkpipe p

这将创建一个名为bkpipe类型管道。

接下来,弄清楚你需要做什么。这里有两个有用的场景。其中,将主机/地址和端口号替换为适合您的中继的端口。

要将发送到本地端口的数据转发到另一台计算机上的远程端口:

 nc -l -p 9999 0<bkpipe | nc remotehost 7000 | tee bkpipe

要连接到另一台计算机,然后将该连接中的数据中继到另一台计算机:

 nc leftHost 6000 0<bkpipe | nc rightHost 6000 | tee bkpipe

但是,如果您只需要在单个主机内处理基本 IPC,则可以完全放弃 netcat,而仅使用 mknod 创建的 FIFO 管道。如果你用一个进程将东西塞进 FIFO,它们就会挂在那里,直到其他进程将它们读出。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

读取和写入同一个netcat tcp连接 的相关文章

随机推荐

  • Spark Streaming + Kafka:SparkException:无法找到 Set 的领导者偏移量

    我正在尝试设置 Spark Streaming 以从 Kafka 队列获取消息 我收到以下错误 py4j protocol Py4JJavaError An error occurred while calling o30 createDi
  • 库中存储库的 NoSuchBeanDefinitionException

    我创建了一个用于在多个 Spring Boot 应用程序上共享代码的库 该库包含一个 Repository 类RequestRepository 将库添加到 Spring Boot 项目后 编译并成功运行单元测试 Library Reque
  • YSlow 规则“不要在 HTML 中缩放图像”背后的基本原理是什么

    我在以下地方遇到过这个规则YSlow http developer yahoo com performance rules html no scale为了提高性能 表示不应在 HTML 中调整图像大小 他们没有提到这条规则的任何具体原因 有
  • 为什么OpenGL(IOS)中有.pvr文件

    我正在 IOS 中使用 OpenGL 制作应用程序 使用 PVR 纹理来制作 3D 效果 我无法理解 pvr 文件 所以请朋友们了解一下 pvr 文件以及它在 OpenGL 中的重要性以及我该如何制作它 PVR 文件是各种纹理格式的容器 例
  • 从 condaenvironment.yaml 安装时的依赖项的 pip 依赖项

    我正在尝试为项目的用户创建一个 condaenvironment yml 文件 其中一种依赖项不是由 conda 分发的 而是通过 pip github 提供 我假设基于这个例子 https github com conda conda b
  • 使用 avro-tools 连接 Avro 文件

    我正在尝试将 avro 文件合并为一个大文件 问题是concat命令不接受通配符 hadoop jar avro tools jar concat input part output bigfile avro I get 线程 main 中
  • MYSQL INSERT 中的德语变音

    我的 mysql 插入语句有问题 我有一个将 utf 8 字符正确提交到插入文件的表单 我已经检查了 POST 变量 现在 当我查看数据库中的 INSERT 时 没有变音符号 而是问号 该错误必须位于插入语句之前 如果我从数据库输出 手动输
  • Scikit-learn Predict_proba 给出错误答案

    这是来自的后续问题如何知道 Scikit learn 中的 Predict proba 返回数组中表示哪些类 https stackoverflow com questions 16937243 how to know what class
  • 使用 Google Analytics 进行 Javascript 覆盖/对话跟踪

    使用 javascript 在我的例子中准确地说是 jQuery 我需要启用一个对话框 以便在 Google Analytics 中将其作为唯一的页面视图进行跟踪 尽管它只是一个模态叠加层 出于上下文目的 我不希望用户离开页面并且对话框内容
  • UITextField 上的 UITapGestureRecognizer 在 IOS 7.1 中不再工作

    我有一个UITapGestureRecognizer附于一个UITextField以获得类似 下拉 的效果 当 的时候UITextField被点击 我提出一个UIPopover与内容 这在 7 1 之前就像一个魅力 现在UITextFiel
  • 如何知道电子邮件地址是否无效?

    我在 www email it 上的电子邮件地址已被禁用 因为我已经很长时间没有使用它了 现在 当我访问 FB 时 我收到以下消息 Our systems have detected that email protected cdn cgi
  • 在 IntelliJ IDEA 14 中运行 JUnit 测试而不选择配置类型

    在带有 Gradle 插件的 IntelliJ IDEA 14 中 我想运行 JUnit 测试 而不询问配置类型 当我第一次运行测试时出现问题 本次运行没有配置 我从未在 IDE 中使用 Gradle 运行测试 因此禁用使用 Gradle
  • 如何根据其他列值设置唯一约束

    我编写以下脚本用于客户域维护 在我的脚本中 我想在表中进行修改 如果状态为活动 我想为端口字段设置唯一约束 否则 如果状态为非活动 我不想设置唯一约束 如何根据其他列值设置此约束 请帮我 bin bash echo Enter the Da
  • C# ui Automation [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在尝试在 C 中自动化 gui 这与浏览器自动化相同吗 我如何启动 ui 自动化 如果您使用 WPF Microsoft 有一个非
  • 如何使用 heroku CLI 连接到选定的应用程序

    我正在尝试在 Heroku 上部署我的 Java Web 应用程序 当我制作教程时 我使用创建了一个应用程序赫罗库创建命令 我们可以说它是 name app1 然后我在教程结束后删除了它并创建了一个新的来部署它 让它成为 new app 但
  • 最新的 CSS 父选择器 [重复]

    这个问题在这里已经有答案了 我能找到的关于此的最新信息是W3C 选择器 4 级编辑草稿 http dev w3 org csswg selectors 4 但是 据我所知 它不再提及父选择器 我知道有一个谷歌对此进行的调查 https do
  • 我的 TableView 中分隔线之前的空白

    我有一个关于 UITableView 的问题 我有一个 UITableViewController 并且创建了一个自定义单元格 当我可视化 tableView 时 我在分隔线之前看到了一点空白 正如您在这个屏幕截图中看到的那样 为什么 这是
  • F# 与 OCaml:堆栈溢出

    我最近发现了一个关于适合 Python 程序员的 F http combiol org fs FSUG FS4PPv2 pptx 看完之后 我决定自己实现一个 蚂蚁谜题 的解决方案 有一只蚂蚁可以在平面网格上走动 蚂蚁一次可以向左 向右 向
  • php 分叉问题

    我有以下测试 php 来执行 fork spawn 过程 其中测试还尝试在完成后杀死子进程 僵尸 我希望有一个更有效的流程 其中任何子进程都会尽快从进程表中删除 当前尝试填满了进程表 并导致内存分配问题 导致系统关闭 该应用程序在 Fedo
  • 读取和写入同一个netcat tcp连接

    假设我写入 netcat 连接 tail f file nc localhost 7050 do whatever nc localhost 7050 这里发生的是我们有两个套接字连接 用于执行一些请求 响应 但由于一些原因 这并不理想 我