ubuntu 开机自报IP地址(用于无屏幕小车-远程连接)

目录

1.环境安装

shell 复制代码
sudo apt-get install espeak  #先安装这个库
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyttsx3==2.90  #再安装pyttsx3 pyinstaller
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller==6.3.0  # 安装打包的库

2.代码

python 复制代码
#!/usr/bin/env python
#-*-coding:utf-8-*-
 
import socket
import pyttsx3
 
def extract_ip():
    st = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    try:
        #st.connect(('10.255.255.255', 1))
        st.connect(('8.8.8.8', 80))
        IP = st.getsockname()[0]
    except Exception:
        IP = '127.0.0.1'
    finally:
        st.close()
    return IP
    
ip = extract_ip()
print(ip)
engine = pyttsx3.init()
engine.setProperty('rate', 150) # 设置语速
engine.setProperty('voice', 'zh') # 设置语言
ip = ip.replace('.', '点')

engine.say(ip)
engine.say(ip)
engine.runAndWait()

3.打包成可执行文件

切换到当前目录

shell 复制代码
pyinstaller -F -w xx_ip.py  #xx_ip.py为你的文件名

在当前目录会生成dist文件夹,里面同名文件即为可执行文件。

4.开启开机自启

浏览选择可执行文件:

相关推荐
readhere8 小时前
从ZYNQ7000开发板,学会启动嵌入式Linux系统——入门学习:EBAZ4205篇目录
linux·启动·嵌入式linux·zynq7000·ebaz4205
打工仔折腾 AI9 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
‎ദ്ദിᵔ.˛.ᵔ₎10 小时前
关于Linux 线程局部存储的认识
linux·运维
小小de风呀11 小时前
de风——【从零开始学习Linux】(九):进程基础 —— 从冯诺依曼体系到 fork 创建进程
linux·学习
晚风吹北巷13 小时前
Linux复习篇(自用)
linux·运维·服务器·1024程序员节
FPGA小迷弟14 小时前
FPGA开发Vivado Block Design/Vitis/SDK/xlinx/开发教程,保姆级别,一看就会!
网络协议·tcp/ip·fpga开发·verilog·fpga
FPGA小迷弟14 小时前
基于FPGA实现智能网卡的概念,什么是智能网卡
网络协议·tcp/ip·fpga开发·verilog·fpga
by2099914 小时前
Linux 压缩传输、进程查看与权限管理
linux·经验分享·1024程序员节
无足鸟ICT15 小时前
【RHCA+】reboot命令(重启)
linux·运维·服务器·1024程序员节