我可以用来netcat在两台计算机之间传输文件。
# Server
nc -l -p 8080 < file
# client
nc 192.168.1.101 8080 > file
Run Code Online (Sandbox Code Playgroud)
我可以使用netcat从 Internet 下载 URL 之类的wget吗?
假设您指的是常规 HTTP URL,这是可能的,但它需要您手动输入 HTTP 请求。如果 URL 需要带有 url 编码形式的 HTTP POST 或查找特定标头,则这可能非常麻烦。
您需要向 netcat 的标准输入提供有效的 HTTP 请求。总体思路是:
执行命令 nc example.com 80
netcat 将从 开始读取stdin,并且您在终端中输入或粘贴的任何内容都将通过网络发送到您选择的端口上的远程服务器(80 是默认的 HTTP 端口)。
现在您需要输入或粘贴一个 HTTP 请求,例如:
GET / HTTP/1.1
Host: example.com
User-Agent: netcat
Run Code Online (Sandbox Code Playgroud)
最后还需要一些换行符,所以反复按回车键,直到得到 HTTP 响应。然后你必须手动解析响应。
netcat 工作在 TCP 层,因此任何基于 HTTP 的协议在技术上都可以与 netcat 一起使用,但对于不适合人工输入的协议(例如 ssh 和 https),如果您不使用它可能很难使用从程序编写脚本。如果您正在编写程序,为什么不使用普通的 TCP 套接字?
为此目的,netcat 的局限性如下:
| 归档时间: |
|
| 查看次数: |
10699 次 |
| 最近记录: |