1. 程式人生 > >python實現nginx圖形介面管理

python實現nginx圖形介面管理

好久沒有更新部落格了,最近一直在學習python,於是,在有空閒的時間寫下python檢視介面管理nginx,寫得不夠好,不過希望能幫忙到其他童鞋,再次感嘆,強大的python,不說了,上程式碼。

  1. [[email protected] ~]# cat /opt/python.py  
  2. #-*- encoding=UTF-8 -*- 
  3. import Tkinter 
  4. from Tkinter import * 
  5. from FileDialog import * 
  6. import os 
  7. root = Tk() 
  8. root.title('nginx管理GUI') 
  9. root.geometry('800x400') 
  10. t
     = Tkinter.Text(root,height=20,width=100,bg='grey',wrap = 'word' ) 
  11. def openfile(): 
  12.     t.delete(1.0, 'end') 
  13.     fd = LoadFileDialog(root) 
  14.     filename = fd.go() 
  15.     content = open(filename, 'r') 
  16.     linescontent.readlines() 
  17.     for line in lines: 
  18.         t.insert('end',line) 
  19. #    file.close() 
  20. def savefile(): 
  21.     fd = SaveFileDialog(root) 
  22.     filenamefd.go() 
  23.     file = open(filename, 'w') 
  24.     content = t.get(1.0, END) 
  25.     file.write(content) 
  26.     file.close() 
  27. def threads(): 
  28.     t.delete(1.0, 'end') 
  29.     result = os.popen('ps -ef | grep httpd | grep -v grep|wc -l').readlines() 
  30.     t.insert(INSERT, "\n".join(result), "a") 
  31. def status(): 
  32.     t.delete(1.0, 'end') 
  33.     result = os.popen('sh status.sh').readlines() 
  34.     t.insert(INSERT, "\n".join(result), "a") 
  35. def total(): 
  36.     t.delete(1.0, 'end') 
  37.     result = os.popen('sh conn.sh').readlines() 
  38.     t.insert(INSERT, "\n".join(result), "a") 
  39. def start(): 
  40.     t.delete(1.0, 'end') 
  41.     result = os.popen('service httpd start').readlines() 
  42.     t.insert(INSERT, "\n".join(result), "a") 
  43. def stop(): 
  44.     t.delete(1.0, 'end') 
  45.     result = os.popen('service httpd stop').readlines()     
  46.     t.insert(INSERT, "\n".join(result), "a") 
  47. def restart(): 
  48.     t.delete(1.0, 'end') 
  49.     result = os.popen('service httpd restart').readlines() 
  50.     t.insert(INSERT, "\n".join(result), "a") 
  51. def about(): 
  52.     t.delete(1.0, 'end') 
  53.     w = Label(root,text="這個是nginx管理的第一個版本,謝謝大家支援"
  54.     w.pack(side=TOP
  55. menubar = Menu(root) 
  56. #建立下拉選單File,然後將其加入到頂級的選單欄中 
  57. filemenu = Menu(menubar,tearoff=0
  58. filemenu.add_command(label="開啟配置檔案"command=openfile
  59. filemenu.add_command(label="儲存配置檔案"command=savefile
  60. filemenu.add_separator() 
  61. filemenu.add_command(label="退出"command=root.quit) 
  62. menubar.add_cascade(label="nginx配置管理"menu=filemenu
  63. #建立一個下拉選單Edit 
  64. editmenu = Menu(menubar, tearoff=0
  65. editmenu.add_command(label="匯流排程數"command=threads
  66. editmenu.add_command(label="狀態"command=status
  67. editmenu.add_command(label="連線數"command=total
  68. menubar.add_cascade(label="nginx基本監控檢視",menu=editmenu
  69. #建立下拉選單status 
  70. editmenu = Menu(menubar, tearoff=0
  71. editmenu.add_command(label="啟動nginx"command=start
  72. editmenu.add_command(label="停止nginx",command=stop
  73. editmenu.add_command(label="重啟nginx"command=restart
  74. menubar.add_cascade(label="nginx操作",menu=editmenu
  75. #建立下拉選單Help 
  76. helpmenu = Menu(menubar, tearoff=0
  77. helpmenu.add_command(label="about"command=about
  78. menubar.add_cascade(label="檢視版本和幫助"menu=helpmenu
  79. #顯示選單 
  80. root.config(menu=menubar
  81. #顯示選單 
  82. t.pack() 
  83. mainloop() 

注意,這裡需要的模組,還有要在圖形介面的系統

執行結果:

相關推薦

python實現nginx圖形介面管理

好久沒有更新部落格了,最近一直在學習python,於是,在有空閒的時間寫下python檢視介面管理nginx,寫得不夠好,不過希望能幫忙到其他童鞋,再次感嘆,強大的python,不說了,上程式碼。 [[email protected] ~]# cat /opt/

python 實現GUI(圖形使用者介面)程式設計

Python支援多種圖形介面的第三方庫,包括: wxWidgets Qt GTK Tkinter: Tkinter 模組(Tk 介面)是 Python 的標準 Tk GUI 工具包的介面 .Tk 和 Tkinter 可以在大多數的 Unix 平臺下使用

Python實現簡單的名片管理系統

rem 代碼 card 刪除 import val 字典 fin pytho 首先新建項目,包含主程序cards_main和工具庫cards_tools: 如下:main函數主主要使用while和if實現4功能切換,切換的具體操作由cards_tools中的函數執行。不說了

MySQL學習 二 圖形介面管理工具Navicat for MySQL安裝和使用

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

三行命令實現ubuntu圖形介面和命令列介面互切

Linux圖形介面和命令列介面相互切換方法: 如果預設是圖形介面時:     Root模式下:vi /etc/default/grub     非Root模式下:sudo vi /etc/default/grub     可以看到這裡default=”quiet spl

python實現簡單UI介面

# -*- coding:utf-8 -*- import easygui import easygui as g message = '愛我不?' message1 = '你是智障吧' def uiShow(message): while (1): Yes_or_No

tomcat配置圖形介面管理

解決方法: 在conf/tomcat-users.xml檔案裡面,在前面新增如下程式碼: <role rolename="manager-gui"/> <user username="tomcat" password="admin8

python實現自定義介面

一、開發介面的作用   1、mock 服務:在別的介面沒有開發完成的時候可以模擬一些介面以便測試已經開發完成的介面,例如假的支付介面,模擬支付成功、支付失敗。   2、瞭解介面是如何實現的:資料互動、資料返回   3、開發給別人檢視資料,避免其他人直接操作、檢視資料庫   二、&

10款最好用的MySQL資料庫客戶端圖形介面管理工具

 MySQL 在過去由於效能高、成本低、可靠性好,已經成為最流行的開源資料庫,因此被廣泛地應用在 Internet 上的中小型網站中。隨著 MySQL 的不斷成熟,它也逐漸用於更多大規模網站和應用,比如維基百科、Google 和 Facebook 等網站。非常流行的開源軟

ubuntu裡面如何以root身份使用圖形介面管理檔案?

nautilus 是gnome的檔案管理器,但是如果不是root賬號下,許可權受限,我們可以通過以下方式以root許可權使用! 一,快捷鍵“ctrl+alt+t”,調出shell。 二,在shell中

python實現簡單的登入管理

import json,timeusername=[]userpasswd=[]def login_success_file(name): try: f=open(r"F:/login_success_syslog.txt",'a+') json.dump(time.ctim

Cordova - Windows版本圖形介面管理工具,告別命令列輸入方式!

原文: Cordova - Windows版本圖形介面管理工具,告別命令列輸入方式! Cordova本身提供的是命令列管理工具,並沒有提供圖形介面管理工具,雖然命令列管理工具可以完成所有Cordova管理,但是對於我這種懶蛋,可真不希望每次都輸入命令,而且我更擔心一旦輸錯一個字元,命令執行失敗,再次重新輸入

SSDB圖形介面管理工具:phpssdbadmin安裝部署

環境: 14.04.1-Ubuntu 1、安裝Nginx apt-get install nginx ubantu安裝完Nginx後,檔案結構大致為:   所有的配置檔案都在 /etc/nginx下;   啟動程式檔案在 /usr/sbin/nginx下;   日誌檔案在 /var/log/nginx/下

linux 上的SQl Server 的圖形介面管理軟體

SQuirrel SQL 一款基於java的資料庫管理工具。 所以可以執行在任意平臺上,除了介面醜一點。在windows上我絕對不會選的,navicat多好。 安裝 在控制檯執行: # java -jar squirrel-sql-snapshot-20170305_

python tkinter寫圖形介面

用python tkinter模組做了一個小demo,頁面上設定4個按鈕,每個按鈕點選會有流水的滴答聲,每個按鈕呼叫相應的方法,在此點選按鈕後呼叫的方法僅為顯示一個訊息彈窗,顯示圖片的按鈕開啟檔案對話方塊,可選擇檔案。 實現的最終效果如下圖 執行環境:Windows +

python 實現圖形介面exe

需求:1)圖形介面小工具 2)exe檔案 3)對環境無依賴   之前大型的gui專案多用java實現,exe4j轉成exe檔案,缺點是執行此exe的人必須裝有java虛擬機器環境,或者吧jre達到exe會非常大,目前僅需要一個輕量級的小工具所以選擇技術如下。 1、pytho

Python 圖形介面 Tkinter 實現倒計時

# Countdown using Tkinter from Tkinter import * import time import tkMessageBox class App: def __init__(self,master): frame

利用python圖形介面實現一些小工具

import easygui as g import sys import datetime import uuid import socket import psycopg2 import uuid nowTime=datetime.datetime.now

python實現 --工資管理系統

... pre 記錄 rain pat line number author nes # -*- coding: utf-8 -*- __author__ = ‘hjianli‘ # import re import os info_message = """Alex

Docker的安裝和鏡像管理並利用Docker容器實現nginx的負載均衡、動靜分離

docker的安裝和鏡像管理並利用docker容器實現nginx的負載均衡、動靜分離Docker的安裝一、Docker的概念Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後發布到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互