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.开启开机自启

浏览选择可执行文件:

相关推荐
让子弹飞0214 分钟前
36.2Linux单总线驱动DS18B20实验(详细讲解代码)_csdn
linux·ubuntu·驱动的分离和分层
Yana.nice29 分钟前
yum list 和 repoquery的区别
linux
码出钞能力1 小时前
更换libc.so导致linux变砖,通过LD_PRELOAD挽救
linux·服务器
小马学嵌入式~1 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
慢慢沉2 小时前
UDP与TCP的区别
网络协议·tcp/ip·udp
小猪咪piggy2 小时前
【JavaEE】(24) Linux 基础使用和程序部署
linux·运维·服务器
Haven-2 小时前
Linux常见命令
linux·基本指令
IT 小阿姨(数据库)2 小时前
PgSQL中pg_stat_user_tables 和 pg_stat_user_objects参数详解
linux·运维·数据库·sql·postgresql·oracle
MChine慕青3 小时前
顺序表与单链表:核心原理与实战应用
linux·c语言·开发语言·数据结构·c++·算法·链表
朱自清的诗.3 小时前
使用虚拟机Ubuntu搭建mosquito服务器 使esp32、上位机通信
ubuntu·esp32·mosquito