分享一个命令行终端的 Python 脚本执行工具

2019-11-13 12:12:06 +08:00
 CtheSky

平时总是有很多脚本要跑。这些脚本执行的时候有先后的依赖关系,我希望它们可以最大程度地并行,同时又可以方便地去查看每个任务的执行状态,输出和日志。于是就写了这个 python 库,提供命令行终端的交互界面:

已经发布到了 pypi 上,直接 pip install gtui 就可以安装了,具体的文档可以看 Github 项目主页,里面有一个简单的例子: https://github.com/CtheSky/gtui

希望大家能给我点反馈,欢迎来提 issue 和 pr。

4227 次点击
所在节点    分享创造
6 条回复
Aether
2019-11-13 14:14:04 +08:00
应该有实用场景(虽然眼下想不起来)。
先收藏感谢…………。
roberthe
2019-11-13 15:01:22 +08:00
不多 bb,看上去是有点帅,撸起来试试
zthxxx
2019-11-14 18:53:57 +08:00
tumx / screen 解君愁
CtheSky
2019-11-15 09:26:12 +08:00
@zthxxx 这个可以声明一个依赖关系图,没有先后依赖关的任务会并行执行的。因为是命令行的所以可以在 tmux 里面用,我平时经常和 crontab + tmux 一起用
zthxxx
2019-11-15 10:54:44 +08:00
@CtheSky #4 看了下你是用 gtui.add_dependency() 的方式来添加依赖,原本需要执行的命令行现在还需要多写一个 python 文件来执行了,日志也需要重新自己写,对一般情况是不是太麻烦了?

如果都已经上到要用 python 层面了,有什么必要不直接用轻量级的调度方案 APScheduler / Airflow 呢

https://github.com/agronholm/apscheduler
https://github.com/apache/airflow
CtheSky
2019-11-16 12:20:10 +08:00
@zthxxx 我的描述有点不太精确,其实本来是写了一个 python 库的,应该不算是跑脚本的工具。本来是在公司里做的一个命令行工具的一部分,是里面专门用来展示任务进度的,后来就单独抽成一个库开源了,其实主要是为了命令行界面,自己是重度终端用户。其他很多场景的确 airflow 这样的提供的功能更加完善。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/619092

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX