文件共享是工作中经常要进行的。
Mac用户之间可以通过AirDrop来共享文件。AirDrop要借助无线网络,而很多人都是将Mac做成个人热点供手机等Wifi连接,AirDrop时必须断开热点,不方便。当然也可以在“设置”->“共享”中设置文件共享,然后到另一台机器上打开,然后输入用户密码,,,,听着都麻烦。
有没有很Geek很优雅的方式呢?用Python!
Python是一门完全对得起“短小精悍”这四个字的编程语言。Mac上都会预装Python,我们使用Python写一个小程序来实现文件共享:
1 import SimpleHTTPServer 2 import BaseHTTPServer 3 server = BaseHTTPServer.HTTPServer(("",8000),SimpleHTTPServer.SimpleHTTPRequestHandler) 4 server.serve_forever()
将上述代码保存成http_request_test.py,放到需要共享的文件的上一层目录中,在终端中打开该目录,执行: python http_request_test.py ,
如果没有报错,就可以通知小伙伴,让他们访问 你的IP:8000端口 这个地址共享文件啦。如图
2020年04月03日 更新:
更简单的使用 python 3 在局域网共享文件的方法:
打开命令行界面, cd 到需要共享的文件所有目录,执行以下命令:
1 python3 -m http.server
将创建一个默认端口为 8000 的 web 服务,然后在浏览器中打开网址: http://本机局域网 IP/ 即可看到需要共享的文件。
2020年04月11日13:57:32
使用 Python 3 创建 FTP 服务器:
- 安装 pyftpdlib : pip3 install pyftpdlib --user
- 启动默认的 ftp 服务: python3 -m pyftpdlib -p 21
- 局域网内通过访问 http://ip.in.local.net:21
上述启动的 ftp 服务器默认是匿名访问的,即用户名:anonymous,密码为空,如果要定制访问权限可以使用如下代码:
# !/usr/local/bin/python3 # -*- coding: utf-8 -*- # __doc__ = """ """ from pyftpdlib.authorizers import DummyAuthorizer from pyftpdlib.handlers import FTPHandler from pyftpdlib.servers import FTPServer import os if __name__ == '__main__': authorizer = DummyAuthorizer() authorizer.add_user("user", "12345", ".", perm="elradfmwMT") authorizer.add_anonymous(os.getcwd()) handler = FTPHandler handler.authorizer = authorizer server = FTPServer(("192.168.31.103", 21), handler) server.serve_forever()