【Lua】Lua的FTP上传下载功能
最近在学习Lua,发现网上关于Lua的FTP功能介绍不是很多,就自己去读了官方文档(LuaSocket:FTP support),记录下学习的过程。
0x01 安装LuaSocket
使用FTP功能,首先得安装LuaSocket这个包,可以参考这篇文章来安装《使用Lua的扩展库LuaSocket用例》
我遇到的问题是,电脑上有Lua5.2,Lua5.3,系统默认的是5.3,但是Luarocks给我装到Lua5.2里面去了,无法调用。
于是我就自己编译安装,系统是macosx,但一直给我提示不支持x86_64。找了好久的资料,才发现Makefile里面有个平台选项,默认是linux,得改成macosx。
也不能直接make install,要改成make install-both
0x02 FTP下载
(把编辑器设置成markdown格式,还是不行啊,先截图看着吧。。。)
用腾讯云的学生优惠买了个VPS,在上面搭建了FTP服务器。
几行代码就可以实现以匿名模式访问FTP,将获取到的文件内容存放到f变量里面。
我发现Lua好像不支持直接下载文件,必须自己新建一个文件,将获取到的内容写进去。
以"w"模式打开/tmp/hahaha.txt文件,将刚获取到的内容写进去。
对于一些可执行文件似乎也是这种处理方式,我试了个exe、zip文件,确实是这样的。