gpt4 book ai didi

Linux.netcat + 庆典

转载 作者:太空宇宙 更新时间:2023-11-04 10:26:12 24 4
gpt4 key购买 nike

我有一个 bash 脚本:

#!/bin/bash
while :
do
nc -l -p 30003 | python3 script.py
done

我希望聆听始终有效。

nc localhost 30003 # 工作正常输入一些东西Ctrl+C

再试一次 nc localhost 30003 # 不工作

所以,在套接字第一次关闭后,它再也不会打开了..

我该如何解决?

  • 另外,我在 python 脚本中定义了很多函数,所以我不想从头开始运行它。可能吗?

谢谢。

最佳答案

问题是 nc -l -p 30003 在 python3 script.py 完成之前没有再次运行。 Ctrl+C nc localhost 30003 后没有监听nc 连接。如果将 python3 script.py 替换为 cat,nc 服务器将重新启动。因此,简单的解决方案是让 script.py 退出。

我假设您有一个要保存的状态。一种可能性是将状态(变量等)保存为 JSON 的文件。另一种方法是让 nc 将输出写入文件,然后从该文件中读取 script.py。

如果你有时间,并且想学习一些网络知识,我建议你看看 python socket API。您可以让 script.py 充当服务器并直接从连接端点读取数据,而不是通过 nc。

希望这对您有所帮助。

关于Linux.netcat + 庆典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41472244/

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