作者: RunThem
未经允许, 禁止转载, 尤其 CSDN, 违者必究

引言

起因是我的旧电脑上有很多的文件需要传到我的新电脑上, 有几个G那么大, 此时需要一个局域网下可以传输文件的命令.

netcat (nc是简写) 是用于在网络上读取, 写入, 重定向和加密数据的通用命令行工具. 它旨在成为您的瑞士军刀网络, 处理各种各样的安全测试和管理任务.

但是它比较旧, 一般使用它的升级版 ncat, ncat 它有着更多的功能, 尤其是与其他的命令组合起来是更为强大的, 但我只介绍它在局域网下传输文件的能力.

fix: 不用 nc 是它有个问题, 文件传输完成不会断开连接, 导致你无法判断文件是否传输完成.


1. 准备工作

假设有两台电脑 AB, A上有一个文件需要传递到 B 上.

传输方式有两种, 一种是上传, 另一种是下载, 这两种是没有区别的.

1.1 上传文件

A 当成客户端, B 当成服务器, 将文件上传到 B 上.

1
2
3
4
5
# A
nc {{B.ip}} {{B.port}} < {{file}} # 将文件上传至服务器指定的端口

# B
nc -l -p {{B.port}} > {{file}} # -l监听端口, -p制定监听的端口

1.2 下载文件

A 当成服务器, B 当成客户端, 从 A 上下载文件.

1
2
3
4
5
# A
nc -l -p {{A.port}} < {{file}}

# B
nc {{A.ip}} {{A.port}} > {{file}}

然后就可以去喝杯 java 了, 笑.