包装耗时的 shell 命令,并在此命令结束后,发送邮件提醒,并附带此命令的所有输出信息(包括正常输出信息和报错信息)
- 克隆项目到本地,并进入项目目录
- 配置命令全局使用
- Linux 平台
sudo cp dist/remind /usr/bin
- Windows 平台,需要以管理员身份运行终端窗口
xcopy dist/remind.exe "C:\Windows\System32\remind.exe" /I
- Linux 平台
-
先进行初始化:
$ remind init 2024-05-15 15:27:34,548 - INFO - 程序初始化完成,已创建配置文件 /home/xxx/.config/process_reminder.json 2024-05-15 15:27:34,548 - INFO - 请您先进行配置提醒邮件相关参数再使用此程序
-
编辑上方初始化后的配置文件,这个 json 文件共有以下配置项,都是必填项
配置项 说明 例子 sender_smtp_host 邮件发送方 smtp 地址 smtp.163.com sender_smtp_port 邮件发送方 smtp 端口 25 sender_user 邮件发送方邮箱地址 [email protected] sender_pass 邮件发送方授权码 ABCDEFG to_address 进程结束提醒接收方邮件地址 [email protected] -
使用 remind 包装 shell 命令:
remind run -c "python test.py"
$ remind run -c "python test.py" 2024-05-15 15:37:42,911 - INFO - 命令 [python -u test.py] 开始执行,您可以使用 CTRL + C 来终止命令执行,下方是该命令的输出内容 current count is 0 current count is 1 current count is 2 2024-05-15 15:37:45,935 - ERROR - 命令 [python -u test.py] 异常运行结束,return code:1 2024-05-15 15:37:45,936 - ERROR - ==========程序异常输出信息========== Traceback (most recent call last): File "test.py", line 29, in <module> raise "error info" TypeError: exceptions must derive from BaseException
-
查看帮助:
remind -h
$ remind -h usage: remind [-h] [-command COMMAND] [-debug] {init,run} positional arguments: {init,run} 操作类型 optional arguments: -h, --help show this help message and exit -command COMMAND, -c COMMAND 想要执行的 shell 命令 -debug 启用DEBUG日志
- 克隆项目
- 安装依赖:
pip install -r requirements.txt
- 构建:
pyinstaller -F remind.py