首页 > 解决方案 > 如何让 netcat 服务器处理来自 Powershell 的上传文件?

问题描述

我正在尝试将文件从 powershell 脚本上传到 netcat 服务器。

为了检索文件,我使用命令

nc -lvp 80 > /tmp/temp.txt

在我的 linux 机器上。

为了从我的 Windows 10 开始上传,我在 powershell 中使用了以下函数:

function upload($path){
    $uri = "http://ip_adress"
    $wc = New-Object System.Net.WebClient
    $res = $wc.UploadFile($uri, $path)
}

接收到第一个上传的文件,但 powershell 脚本以超时结束,一旦超时,netcat 服务器将关闭。Netcat 无法向 powershell 返回 200 响应以确认上传结束。

是否有任何选项可以让 netcat “生存”并继续接收文件?

我试图在 Powershell 上处理 tiemout 错误,但它并不能避免 netcat 结束。

标签: powershellfile-uploadnetcat

解决方案


Netcat 无法返回 200 响应,因为它不是 HTTP 服务器。它几乎就像一个简单的 cat 命令,只能通过网络完成。某些服务器(SSH、FTP、SFTP)需要在 Linux 端运行才能接受文件。然后可以使用 PowerShell Remoting Over SSH 之类的东西来传输文件。


推荐阅读