一个linux主机与手机或者其他电脑共享文件的小工具开发

目录

 

Github:

思路:

效果:

服务端 

手机端访问:

电脑浏览器:

实践:

requirement.txt

code

控制台颜色定义


Github:

https://github.com/dyingstraw/FileShare/tree/master

思路:

再linux电脑是运行一个http server,然后需要传输文件的设备去访问这个http服务。

效果:

首先再linux端运行python脚本--根据提示选择一个你的内网IP,如果没有提示就不要管了。之后生成了一个二维码,手机扫码就可以访问服务,电脑端没办法扫码可以直接访问二维码下面的地址。可以直接打开pdf,其他的文件类型也可以直接下载,非常nice

服务端 

手机端访问:

电脑浏览器:

实践:

requirement.txt

qrcode

numpy

python3

code

import http.server
import socketserver
import socket

import numpy as np
import os
import random

import qrcode
from qrcode.constants import ERROR_CORRECT_H


ips = socket.gethostbyname_ex(socket.gethostname())
print(ips)
if len(ips[2])>1:
    for index,ip in enumerate(ips[2]):
        print(index,ip)
n=input("请输入你局域网内的IP序号:")
n=int(n)
ip=ips[2][n]
print("选择的ip是:",ip)
port = random.randint(8000,30000)
qr = qrcode.QRCode(version=1,
                       error_correction=ERROR_CORRECT_H,
                       box_size=1, border=1)
qr.add_data("http://{}:{}".format(ip,port))
img = qr.make_image()

img=np.array(img)
for i in range(img.shape[0]):
    str="echo "
    for j in range(img.shape[1]):
        if img[i][j]:
            str+="  \x1b[40;37m"
        else:
            str+="  \x1b[47;37m"
    str+="\x1b[0m"
    os.system(str)
Handler = http.server.SimpleHTTPRequestHandler

with socketserver.TCPServer(("0.0.0.0", port), Handler) as httpd:
    print("serving at http://{}:{}".format(ip,port))
    httpd.serve_forever()

控制台颜色定义

字体色     |     字背景色     |   颜色描述
------------------------------------------
30        |        40       |    黑色
31        |        41       |    红色
32        |        42       |    绿色
33        |        43       |    黃色
34        |        44       |    蓝色
35        |        45       |    紫红色
36        |        46       |    青蓝色
37        |        47       |    白色
-------------------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值