All Projects → meetbill → py_menu

meetbill / py_menu

Licence: GPL-3.0 license
🛠 Snack TUI (1)终端菜单---配置工具利器 (2)三级菜单 (3)编辑页面封装 【CentOS6.X+】

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Labels

Projects that are alternatives of or similar to py menu

onionjuggler
Manage your Onion Services via CLI or TUI on Unix-like operating system with a POSIX compliant shell.
Stars: ✭ 31 (+55%)
Mutual labels:  tui
console engine
A simple terminal framework to draw things and manage user input
Stars: ✭ 144 (+620%)
Mutual labels:  tui
textual
Textual is a TUI (Text User Interface) framework for Python inspired by modern web development.
Stars: ✭ 16,180 (+80800%)
Mutual labels:  tui
octotui
🐙🐱🖥️ GitHub stats in your terminal
Stars: ✭ 202 (+910%)
Mutual labels:  tui
cursive-tabs
Tabs for gyscos/cursive views 🖥️
Stars: ✭ 21 (+5%)
Mutual labels:  tui
p2p-forwarder
P2P Forwarder - a tool for farwarding tcp/udp ports. Made using libp2p.
Stars: ✭ 31 (+55%)
Mutual labels:  tui
rgb-tui
Create and get colors code from the terminal using a nice interface.
Stars: ✭ 57 (+185%)
Mutual labels:  tui
cryptgo
A terminal application to watch crypto prices!
Stars: ✭ 123 (+515%)
Mutual labels:  tui
rustpad
Multi-threaded Padding Oracle attacks against any service. Written in Rust.
Stars: ✭ 75 (+275%)
Mutual labels:  tui
awesome-fetch
Command-line fetch tools for system/other information
Stars: ✭ 177 (+785%)
Mutual labels:  tui
titik
A cross platform minimalistic text user interface
Stars: ✭ 112 (+460%)
Mutual labels:  tui
dflat20
D-Flat Windowing System (SAA/CUA Interface) Version 20
Stars: ✭ 42 (+110%)
Mutual labels:  tui
mauview
A Go TUI library based on tcell.
Stars: ✭ 40 (+100%)
Mutual labels:  tui
vent
Vent is a light-weight platform built to automate network collection and analysis pipelines using a flexible set of popular open source tools and technologies. Vent is python-based, extensible, leverages docker containers, and provides both an API and CLI.
Stars: ✭ 73 (+265%)
Mutual labels:  tui
notcurses-zig-example
Demo showing how to use Notcurses library for building terminal UIs with Zig
Stars: ✭ 32 (+60%)
Mutual labels:  tui
tt
Practicing touch typing, and monitor your typing speed using your own text files
Stars: ✭ 68 (+240%)
Mutual labels:  tui
ScoreboardUI
Pseudo console GUI for .NET
Stars: ✭ 20 (+0%)
Mutual labels:  tui
bs5-utils
A JavaScript utility package for Bootstrap 5 components.
Stars: ✭ 26 (+30%)
Mutual labels:  snack
pystyle
The source of my Python library, pystyle.
Stars: ✭ 158 (+690%)
Mutual labels:  tui
lemmy-terminal-viewer
a terminal user interface for lemmy
Stars: ✭ 21 (+5%)
Mutual labels:  tui

py_menu

更简单操作和使用的终端菜单及管理

Screenshot

1 背景和目标

1.1 背景

  • 平台可能会管理成千上万个实例,但什么来管理平台尼,需要有个程序来对特定平台的服务进行管理操作
  • 管理常用操作程序

1.2 目标

  • 框架与逻辑代码分离,备份代码时只需要备份主要逻辑代码即可

2 名词解释

  • newt: 全称是:Not Erik’s Windowing Toolkit, 用在 RatHat 的 Linux 发行版本 (RHEL, Fedora 和 CentOS) 的安装程序项目 Anaconda 中
  • snack: 官方 newt 库中还提供了 Python 封装库,名称为 snack

3 假设和依赖

3.1 依赖

系统依赖: Centos 6.X 及以上

4 使用

三层菜单点击确定后返回以下结果,是个 json

日志记录在 ./log/pymenu.log

yes {'entry_test2': '0', 'entry_test3': '127.0.0.1', 'entry_test1': '0', 'radios': 'radios2', 'checks_list': ['checks4']}

点击 cancel 时,输出 no

5 相关项目

5.1 类似项目

5.2 使用了 py_menu 的项目

  • MegaCli 终端界面管理工具 Megatui

6 Version

  • V1.2.4,2020-12-19 提醒页面移动到 snack_lib 库中
  • V1.2.3,2020-12-17 三级输出界面可接收参数,方便复用三级输出界面
  • V1.2.2,2019-02-18 (1) 更改日志方式;(2) 添加 Centos6.x _snackmodule.so
  • V1.2.1,2017-03-21 添加三级输出界面
  • V1.2.0,2017-03-17 将三级配置界面独立出来为 three_page.py,可以单独调试此页面
  • V1.1.1,2016-12-19 修复 bug,程序会保留二级菜单选项位置,假如从一级目录重新进入时,二级菜单选择位置没有报异常 bug
  • V1.1.0,2016-09-30 更新 doc,同时重新更新程序结构,使得更方便编写程序
  • V1.0.2,2016-09-29 添加日志,输出到 /var/log/menu_tool/acc.log 中
  • V1.0.1,2016-09-25 First edit

7 参加步骤

  • 在 GitHub 上 fork 到自己的仓库,然后 clone 到本地,并设置用户信息。
$ git clone https://github.com/meetbill/py_menu.git
$ cd py_menu
$ git config user.name "yourname"
$ git config user.email "your email"
  • 修改代码后提交,并推送到自己的仓库。
$ #do some change on the content
$ git commit -am "Fix issue #1: change helo to hello"
$ git push
  • 在 GitHub 网站上提交 pull request。
  • 定期使用项目仓库内容更新自己仓库内容。
$ git remote add upstream https://github.com/meetbill/py_menu.git
$ git fetch upstream
$ git checkout master
$ git rebase upstream/master
$ git push -f origin master

8 小额捐款

如果你觉得 py_menu 对你有帮助,可以对作者进行小额捐款(支付宝)

Screenshot

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].