windows bat脚本自动获取本地公网IP发送到指定邮箱
时间: 2023-12-24 13:03:45 浏览: 275
您可以使用Windows批处理脚本(.bat)来实现自动获取本地公网IP并发送到指定邮箱的功能。以下是一个示例的批处理脚本:
```bat
@echo off
REM 配置发送邮箱和接收邮箱
set "sender_email=your_sender_email@gmail.com"
set "sender_password=your_sender_password"
set "receiver_email=your_receiver_email@gmail.com"
REM 获取公网IP
powershell -Command "(Invoke-WebRequest -Uri 'https://api.ipify.org').Content.Trim()" > ip.txt
REM 读取IP地址
set /p ip=<ip.txt
REM 发送邮件
powershell -ExecutionPolicy Bypass -Command "Send-MailMessage -SmtpServer 'smtp.gmail.com' -Port 587 -UseSsl -Credential (New-Object System.Management.Automation.PSCredential ('%sender_email%', (ConvertTo-SecureString -String '%sender_password%' -AsPlainText -Force))) -From '%sender_email%' -To '%receiver_email%' -Subject 'Public IP Notification' -Body 'Your public IP is %ip%'"
REM 删除临时文件
del ip.txt
```
请将脚本中的 `your_sender_email@gmail.com`、`your_sender_password`、`your_receiver_email@gmail.com` 替换为您自己的邮箱信息。确保您的邮箱支持SMTP服务,并开启了SMTP授权。这个示例使用了Gmail的SMTP服务器,如果您使用其他邮箱,请相应地修改SMTP服务器信息。
将以上代码保存为一个批处理脚本(例如 `get_public_ip.bat`),然后在Windows上运行该脚本,您的公网IP将会被获取并发送到指定的邮箱。您可以使用Windows计划任务或其他自动化工具来定期运行该批处理脚本。
阅读全文