写了个基于|写了个基于 MacOS + iTerm2 自动打开窗口执行命令的工具
大家好,我是秋风,今天要给大家带来的这个工具是我最近写的 一个 npm 工具。mmt 是基于 MacOS + iTerm2 ,目的主要是为了提高日常生活中的效率,接下来我带大家看看一些常用的一些场景。
场景1:单项目多仓库
不知道你是否遇到过这样的场景,当你的项目是拥有前后端两个仓库,你总是需要记住多个命令或者是多个目录,而且需要开启多个终端窗口。例如我开发「木及简历」的时候,就会有这样的困扰,明明是非常重复的动作,每次开发的时候却要输入 路径 + 启动命令,这些步骤的重复是完全没有必要的。
以上便是我开发 mmt 的第一个场景痛点,使用了 mmt 后,你便可以节约以上琐碎的流程,下面通过一个例子来说明:
你的前端项目路径:path/case1-front启动命令: npm run start
你的后端项目路径:pathcase1-backend启动命令: npm run dev
使用 mmt 声明:
> cd path/case1-front> mmt add case1 start> cd path/case1-backend> mmt add case1 dev
在任意命令窗口运行
> mmt run case1
效果如下:
行云流水般丝滑,再也不用输入那些枯燥重复的命令了。
场景2:多项目多仓库 当你一个人维护多个技术栈的项目,启动命令总是容易搞混,使用 Vue 项目启动命令可能是
npm run serve
, 而使用 React 项目却是 npm run start
, 有些项目还可能是 npm run dev
。使用 mmt 可以抹平这种差异,并且你无须记忆你的工程路径。举个例子:
【写了个基于|写了个基于 MacOS + iTerm2 自动打开窗口执行命令的工具】你的项目1: projec1-vue, 启动命令
npm run serve
你的项目1: projec2-react, 启动命令
npm run start
使用 mmt 声明:
> cd path/projec1-vue> mmt add project1 serve> cd path/projec2-react> mmt add project2 start
在任意命令窗口
> mmt run project1> mmt run project2
效果如下:
场景3:脚本别名 当你想要同步运行一些流程线的工作,你就可以使用
add-sync
方式,例如我的某个本地项目需要依赖两个容器环境 e8a47b8aed91 和 e0d433a26388 这个时候运行 mmt 将会自动执行命令。> mmt add-sync project1-dep "docker restart e8a47b8aed91"> mmt add-sync project1-dep "docker restart e0d433a26388"
在任意命令窗口,即可启动两个 docker 实例
> mmt run project1-dep
文章图片
为了能够让脚本复用性更上一个层次,你还可以通过导出配置,分享给你的朋友。
文章图片
以上就是 mmt 的基础介绍,更多功能可以查看 github地址: https://github.com/hua1995116...
如果你觉得对你有帮助欢迎提 Star 呀。
工具好用,当然也要配上好的域名,特地买了一个比较符合这个工具定位的域名 mmt.run
文章图片
文章图片
推荐阅读
- 米家和苹果HomeKit更推荐哪个,各自的优缺点如何()
- 测试必须要知道的四个主要阶段 !
- 使用HAProxy的ACL实现基于文件后缀名的动静分离
- Unity 性能优化经验整理
- 马斯克,那个让汽车也互联网的人|让人类好好说话,比登陆火星更难
- 所有趋势都值得吗( Web设计人员最常犯的5个错误)
- 投稿|最冷的冬天是咖啡业的这个春天
- 投稿|这个黄金赛道又添新玩家:4000亿美金巨头
- 投稿|两个万能公式打造你讲故事的能力
- Python优质文章|分享5个插件,助你在Python的道路越战越勇