我们可以搭建一个简易的服务器,通过局域网来传输文件
具体步骤如下:
一、查看本机ip
在命令行中输入ipconfig指令,查看本机在局域网中的IP
二、使用nodejs搭建服务器
如果没有安装nodejs,则先下载安装nodejs
随便新建一个目录,在该目录中新建文件server.js,内容如下:
const express = require('express')const app = express()const fs = require('fs')const basePath = '.'//正则表达式app.all(/\/.*\..*/, (req, res) => {let path = basePath + req.pathfs.readFile(path, (err, data) => {if(err){res.end(err.message)}else{res.end(data)}})})app.listen(9001) //这里使用的是9001端口,可以随意改变,但请确认使用的端口未被占用且能通过防火墙
使用命令行窗口进入该目录,并执行npm i express和npm i fs两个指令:
将想要传送的文件放在该目录下,这里使用testFiles1.txt和testFiles2.txt作为测试:
然后再次打开命令行,进入该目录,执行node server.js命令,其实就是运行server.js文件:
至此,这个简易的服务器就开始运行了。
除了nodejs,也可以使用别的语言来搭建这个简易服务器,比如java,c,python等等。
三、在linux虚拟机中通过wget下载文件
在虚拟机中执行"wget http://" +IP+ “:” +端口“/”文件名,如下:
查看一下结果,发现文件已经正常下载到linux虚拟机中:
可以传输任何类型的文件,如exe,tar,gz,zip等等。
同时也可以从linux虚拟机往windows主机里传输文件,把服务器搭在linux里面即可。
补充
由于是通过局域网传输,所以速度非常快,下面是测试一个1.5G大小的压缩包,传输速度平均100MB/s
这种方法不可以传输大小超过2G的单个文件,如果有需求请把大文件先拆分。