0、序言
最近对象跟我抱怨,因为公司每天都断电,笔记本电池又有点老化,即便休眠也撑不过一晚上,每天去都要重新开机开软件开文档,简直烦死了,所以希望一开机就能:
- 自动打开常用的几款软件
- 自动发送每日待办清单到邮箱
- 弹窗显示一条读书笔记
这么些小要求,当然是要满足TA啦~
1、需求分析
首先,接到需求的第一步,便是分析需求。
需求点1和2都很好办,用bat脚本就能做到;需求点3,我想的是弹出图片,用py脚本就可以简单实现,最后在bat里调用py脚本。
话不多说,直接开撸。
2、代码实现
2.1 自动打开常用的几款软件
2.2.1 windows开机启动目录
只需两步,快速找到开机启动目录:
① 快捷键win+R,打开运行窗口;
② 输入shell:startup快速找到开机启动目录。
当电脑开机之后,就会自动执行这个目录下的内容,如果是bat文件,系统会自动执行,如果是文件夹或其他文件,则系统会自动调用相关程序打开。
因此,如果是想自动打开某些软件,可以将其快捷方式粘贴到这个目录下,或者用bat脚本打开:
@REM startTask.bat
tasklist|find /i "程序名称.exe" && echo started || start "" "D:\software\程序名称.exe"
这里需要注意的是,bat脚本最好用notepad++打开,将编码格式设为ANSI,否则,当路径中包含中文时可能会报错。
2.2.2 自动发送每日待办清单到邮箱
对象会在每周开始前,将一周的待办事项,以日期命名方式的txt,存放在{ 每日待办清单 }的文件夹下。
因此,我只需要把txt文件中的内容读出来,发送到邮件正文即可。对象的手机设置了邮件提醒,开机后就会收到清单邮件,达到事项提醒的效果。
bat进行邮箱配置:
@REM mail.bat
blat -install smtp.qq.com xxx@qq.com
set yy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
if exist "E:\每日待办清单\%yy%.%mm%.%dd%.txt" (
echo "文件存在">>"C:\Users\AppData\Roaming\Microsoft\Windows\myBats\blat.log"
)