程序启动器

顾名思义,程序启动器仅作为一个程序的独立入口,和命令行 start xxx
有一样的功能,多一个启动器,也就是为程序入口加个 LOGO
本启动器使用 GO
实现
1. 配置文件
为了使程序在使用过程中更加灵活,我们需要一个设计一个配置文件 launcher.json
1 | { |
配置文件初步需求为三个参数,目标命令(target)、执行目录(workDir)、参数(params)
2. 解析配置文件
在代码中定义文件对象属性
1 | type LaunchConfig struct { |
加载配置文件
1 | JsonParse := NewJsonConfig() |
3. 为启动器加锁
通过加锁的方式保证程序同一时间内不可启动多次
1 | _, err := os.Stat(".lock.loop") |
4. 支持命令行附加参数
1 | // 将命令行参数 合并到配置文件的参数后面 |
5. 启动子进程
1 | cmd.Dir = v.WorkDir |
6 总结
总体来说是一个比较简单的练手程序,程序源代码地址 source
- 标题: 程序启动器
- 作者: tsvico
- 创建于 : 2022-06-26 17:46:05
- 更新于 : 2022-06-26 18:24:41
- 链接: https://blog.tbox.fun/2022/218063510.html
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
预览: