#lan #extend #cat #linux #behavior #utility #multicast

bin+lib lancat

lancat 是一个扩展 cat Linux 工具 LAN 行为的工具

3 个版本 (破坏性更新)

0.3.0 2019年6月14日
0.2.0 2019年6月13日
0.1.0 2019年6月11日

#21 in #lan

Apache-2.0

21KB
429

lancat license downloads

什么是 lancat

lancat 是一个扩展 cat Linux 工具 LAN 行为的工具。它会向 LAN 发送一个组播消息以搜索 LAN 中的 lancat 监听器,然后为找到的每个监听器创建一对一的 TCP 连接,以便以可靠的方式传输信息,同时不饱和网络。

安装

lancat 是一个 rust 应用程序。您可以使用 cargo 软件包管理器来安装它。

$ cargo install lancat

如果您将 ~/.cargo/bin 添加到您的 PATH 中,您就可以在电脑的任何地方使用 lancat 了!

支持 linuxwindows,但也可能在其他平台工作。

它是如何工作的?

它有两个主要模式:向 LAN 写入 和从 LAN 读取

向 LAN

要向 LAN 写入数据,以 w 模式运行 lancat

$ lancat -w
hello lan

此外,您可以将文件的标准输入重定向到 LAN 以写入

$ lancat -w < to_share.txt

从 LAN

要读取 LAN 中的数据,以 -r 模式运行 lancat

$ lancat -r
=========== username - 192.168.1.35:43230 ===========
hello lan

如果您想将接收到的数据发送到特定文件,可以将标准输出重定向

$ lancat -r -q > shared.txt

使用 -q 标志(也称为 --quiet)将避免将 用户名行 写入文件。

过滤用户

默认情况下,lancat 使用您的操作系统用户名通知 LAN。您可以使用 -n 标志更改此名称。

您可以只为某些用户过滤写入或读取

$ lancat -w -u user1 user2
$ lancat -r -u user1 user2

要查看哪些用户正在监听 LAN,您可以以 搜索模式 运行 lancat 并使用 -s

$ lancat -s
Found 'user1' at: 192.168.1.72:44435
Found 'user2' at: 192.168.1.72:44439
Found 'user3' at: 192.168.1.54:44432

要查看所有可用选项,请参阅帮助: lancat --help

使用示例

配对以配对 LAN 通信

默认用户名

根据用户user1过滤发送消息

$ echo "Hello user1" | lancat -w -u user1

根据用户user2过滤接收消息

$ lancat -r -q -u user2
Hello user1

只有名为user1user2的用户能够参与通信。

别名名称

Juanito发送消息,并声称自己是Pepito

$ echo "Hello Juanito, I'm Pepito" | lancat -w -n Pepito -u Juanito

接收只有Pepito发送的针对Juanito的消息

$ lancat -r -q -n Juanito -u Pepito
Hello Juanito, I'm Pepito

变更日志

v0.3.0

  • 支持Windows。
  • 端口和IP地址更改时也会调用监听回调(不仅限于用户名)。

v0.2.0

  • 修改了命令行界面

v0.1.0

  • lancat基础

依赖关系

~2.3–3.5MB
~56K SLoC