python实现nginx图形界面管理
好久没有更新博客了,最近一直在学习python,于是,在有空闲的时间写下python视图界面管理nginx,写得不够好,不过希望能帮忙到其他童鞋,再次感叹,强大的python,不说了,上代码。
- [root@localhost ~]# cat /opt/python.py
- #-*- encoding=UTF-8 -*-
- import Tkinter
- from Tkinter import *
- from FileDialog import *
- import os
- root = Tk()
- root.title('nginx管理GUI')
- root.geometry('800x400')
- t = Tkinter.Text(root,height=20,width=100,bg='grey',wrap = 'word' )
- def openfile():
- t.delete(1.0, 'end')
- fd = LoadFileDialog(root)
- filename = fd.go()
- content = open(filename, 'r')
- lines= content.readlines()
- for line in lines:
- t.insert('end',line)
- # file.close()
- def savefile():
- fd = SaveFileDialog(root)
- filename= fd.go()
- file = open(filename, 'w')
- content = t.get(1.0, END)
- file.write(content)
- file.close()
- def threads():
- t.delete(1.0, 'end')
- result = os.popen('ps -ef | grep httpd | grep -v grep|wc -l').readlines()
- t.insert(INSERT, "\n".join(result), "a")
- def status():
- t.delete(1.0, 'end')
- result = os.popen('sh status.sh').readlines()
- t.insert(INSERT, "\n".join(result), "a")
- def total():
- t.delete(1.0, 'end')
- result = os.popen('sh conn.sh').readlines()
- t.insert(INSERT, "\n".join(result), "a")
- def start():
- t.delete(1.0, 'end')
- result = os.popen('service httpd start').readlines()
- t.insert(INSERT, "\n".join(result), "a")
- def stop():
- t.delete(1.0, 'end')
- result = os.popen('service httpd stop').readlines()
- t.insert(INSERT, "\n".join(result), "a")
- def restart():
- t.delete(1.0, 'end')
- result = os.popen('service httpd restart').readlines()
- t.insert(INSERT, "\n".join(result), "a")
- def about():
- t.delete(1.0, 'end')
- w = Label(root,text="这个是nginx管理的第一个版本,谢谢大家支持")
- w.pack(side=TOP)
- menubar = Menu(root)
- #创建下拉菜单File,然后将其加入到顶级的菜单栏中
- filemenu = Menu(menubar,tearoff=0)
- filemenu.add_command(label="打开配置文件", command=openfile)
- filemenu.add_command(label="保存配置文件", command=savefile)
- filemenu.add_separator()
- filemenu.add_command(label="退出", command=root.quit)
- menubar.add_cascade(label="nginx配置管理", menu=filemenu)
- #创建一个下拉菜单Edit
- editmenu = Menu(menubar, tearoff=0)
- editmenu.add_command(label="总线程数", command=threads)
- editmenu.add_command(label="状态", command=status)
- editmenu.add_command(label="连接数", command=total)
- menubar.add_cascade(label="nginx基本监控查看",menu=editmenu)
- #创建下拉菜单status
- editmenu = Menu(menubar, tearoff=0)
- editmenu.add_command(label="启动nginx", command=start)
- editmenu.add_command(label="停止nginx",command=stop)
- editmenu.add_command(label="重启nginx", command=restart)
- menubar.add_cascade(label="nginx操作",menu=editmenu)
- #创建下拉菜单Help
- helpmenu = Menu(menubar, tearoff=0)
- helpmenu.add_command(label="about", command=about)
- menubar.add_cascade(label="查看版本和帮助", menu=helpmenu)
- #显示菜单
- root.config(menu=menubar)
- #显示菜单
- t.pack()
- mainloop()
注意,这里需要的模块,还有要在图形界面的系统
执行结果:
下面的是其他功能查看
写得不是很完美,希望拍砖
转载于:https://blog.51cto.com/youzao/1129535
python实现nginx图形界面管理相关推荐
- 安装网页图形界面管理Linux
安装网页图形界面管理Linux webmin下载地址 http://www.webmin.cn/download.html 下载webmin [root@localhost ~]# wget http ...
- gSTM:Ubuntu 上的 SSH Tunneling 图形界面管理工具
gSTM:Ubuntu 上的 SSH Tunneling 图形界面管理工具 - Wow! Ubuntu gSTM:Ubuntu 上的 SSH Tunneling 图形界面管理工具 介绍 之前我们在 U ...
- python怎么做图形界面-图形界面
Python支持多种图形界面的第三方库,包括: Tk wxWidgets Qt GTK 等等. 但是Python自带的库是支持Tk的Tkinter,使用Tkinter,无需安装任何包,就可以直接使用. ...
- python写前端图形界面_如何Tkinter模块编写Python图形界面
一.为何使用Tkinter而非PyQt 众所周知,在Python中创建图形界面程序有很多种的选择,其中PyQt和wxPython都是很热门的模块包,这些第三方的图形界面模块功能强大.配置丰富,界面美观 ...
- 银河麒麟桌面操作系统V10上安装使用redis及图形界面管理工具RDM(RedisDesktopManager)
前言 本文介绍银河麒麟桌面系统V10上redis及图形管理工具的安装使用 一.安装Redis 点击UK图标.所有程序.终端,打开终端 输入安装指令sudo apt install redis-serv ...
- 【PySimpleGUI】Python用户交互图形界面开发(3)
目录 前言 一.通过列表索引获取窗口返回值 二.通过字典的键获取返回值 前言 上一篇文章介绍了窗口关闭,按钮点击以及其他元素事件.[PySimpleGUI]Python用户交互图形界面开发(2) 这篇 ...
- 210811_152958-Gooey实战 | 几行代码转换Python程序为图形界面应用!
Gooey实战 | 几行代码转换Python程序为图形界面应用! 1.概述 今天发现公众号的一个作者大大用Python写了个小工具, 发现还挺好玩, 而且代码已经分享给大家了.在文章末尾提到还没有为这 ...
- python界面设计实例-【Python】Tkinter图形界面设计(GUI)
简介 作为 Python 开发者,图形用户界面(GUI)开发是必备技能之一.目前,市面上支持 Python 的"GUI 工具包"很多,各有特点,虽然大多数工具包的基础类似,但要学习 ...
- 【Python】Tkinter图形界面设计(GUI)
简介 作为 Python 开发者,图形用户界面(GUI)开发是必备技能之一.目前,市面上支持 Python 的"GUI 工具包"很多,各有特点,虽然大多数工具包的基础类似,但要学习 ...
最新文章
- Uncaught TypeError: Cannot read property 'setAttribute' of null
- python DataFrame join()
- 权限管理说明-以Linux为例
- 四张照片合成一张怎么弄_精美!多张照片组合成一张的拼贴画,每一幅都令人惊叹...
- ASP.NET Core分布式项目实战(oauth2 + oidc 实现 server部分)--学习笔记
- 现在做Android开发有前途吗?复习指南
- Unity热更新之资源的上传与下载
- android 中 FLAG_SHOW_WHEN_LOCKED 的用法及解释
- 揭秘:微信如何用libco支撑8亿用户?
- hyper-v 中 安装 Centos 7.0 设置网络 教程
- TCP/IP协议中IP数据保报文格式详解
- 硬盘容量统计神器WinDirStat
- 【毕业设计】基于树莓派的指纹识别考勤系统 - 单片机 嵌入式 物联网
- 医学图像数据集:肝脏和肿瘤分割数据集
- 荒野乱斗好友系统分析
- 计算机基础使用操作培训ppt,计算机基础操作培训课件ppt课件.ppt
- Redis 作者 Antirez 讲如何实现分布式锁?Redis 实现分布式锁天然的缺陷分析Redis分布式锁的正确使用姿势!...
- 微电网调度(风、光、储能、电网交互)(MatlabPython代码实现)
- pr怎么把视频去水印
- 排序算法稳定性和不稳定性的理解
热门文章
- 磁盘配额的wmi版本(C#)
- list控件响应鼠标键的单双击
- redis常用命令参考
- bug诞生记——不定长参数隐藏的类型问题
- WMI技术介绍和应用——查询时间信息
- libuvc介绍及简单使用
- java注解返回不同消息,Spring MVC Controller中的一个读入和返回都是JSON的方法如何获取javax.validation注解的异常信息...
- android4.3.0 camera,4.3、高通camera驱动简析
- 卡顿严重_魔兽怀旧服:安其拉开门二测结果出炉,暴雪依然无法解决卡顿问题...
- easyexcel生成excel_阿里JAVA解析Excel工具easyexcel