我们可以搭建一个简易的服务器,通过局域网来传输文件

具体步骤如下:

一、查看本机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.path
    fs.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的单个文件,如果有需求请把大文件先拆分。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐