通过网络发送文件的最简单方法

Tom*_*Tom 15 networking file-sharing netcat

通过网络将文件发送到其他计算机的最简单、最通用的方法是什么?我的意思是其他人目前正在使用的计算机。如果计算机打开了活动会话,我认为 SSH 不起作用。

到目前为止,我正在使用netcat,效果很好。但是还有其他简单的方法可以做到这一点吗?我netcat遇到的一个问题是,接收者需要知道文件结尾并且必须为流提供一个名称。

dr_*_*dr_ 22

你不必要地使你的生活复杂化。使用scp.

传输文件myfile的本地目录,以目录/富/栏上机OTHERHOST为用户用户,这里的语法:scp myfile user@otherhost:/foo/bar

编辑:值得注意的是,通过 scp/SSH 传输是加密的,而通过 netcat 或 HTTP 传输则不是。因此,如果您要传输敏感文件,请始终使用前者。

  • 好吧,如果你想挑剔,让我们声明_你必须以`user@otherhost`身份验证_。 (9认同)
  • 不,如果您使用公钥身份验证,则不需要密码 (2认同)

Ans*_*tel 11

你也可以试试

python -m SimpleHTTPServer 8180
Run Code Online (Sandbox Code Playgroud)

它将为它通过 HTTP 执行的目录中的文件提供服务,您可以通过浏览器访问它。

  • 对于 Python 3:`python3 -m http.server <port>`。 (2认同)

Mar*_*rco 9

如果您满意,netcat您可以通过引入tar. 这也简化了一次发送多个文件以及发送目录。

在发送端使用:

tar cf - <files> | nc <host> <port>
Run Code Online (Sandbox Code Playgroud)

在接收端:

nc -l <port> | tar x
Run Code Online (Sandbox Code Playgroud)

另一种解决方案是使用rsyncor scp