1、编写python脚本(send_ip_message.py):获取本机IP地址,发送邮件
import socket
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
def get_host_ip():
try:
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
s.connect(('8.8.8.8',80))
ip=s.getsockname()[0]
finally:
s.close()
return ip
def send_msg(text):
fromaddr = '*********@qq.com' # 发送邮件的邮箱
password = 'aaaaaaaaaaaaaaaa' # 邮箱的授权码,不是密码
toaddrs = ['#########@qq.com'] # 目标邮箱
m = MIMEMultipart()
content = text
textApart = MIMEText(content)
m.attach(textApart)
m['Subject'] = 'Linux IP' # 邮件标题
try:
server = smtplib.SMTP('smtp.qq.com')
server.login(fromaddr, password)
server.sendmail(fromaddr, toaddrs, m.as_string())
server.quit()
print('success!')
except smtplib.SMTPException as e:
print('error:', e) # 打印错误
if __name__ == '__main__':
send_msg(get_host_ip())
QQ邮箱授权码获取方式:设置-账户-开启IMAP/SMTP服务,获取授权码
2、编写运行python脚本的shell脚本(send_message_service.sh)
#!/bin/sh
python3 /home/wangyan/send_ip_message.py
exit 0
添加可执行权限
chmod a+x send_message_service.sh
3、设置shell脚本开机启动
编辑/etc/profile文件,在末尾添加一行:
/home/wangyan/send_message_service.sh
reboot重启尝试成功。
参考链接:
python获取本机IP地址_ssuqin001的博客-CSDN博客_python获取本机ip