一:cmd介紹
引用python的官方文件the cmd class provides a ****** framework for writing line-oriented
command interpreters. these are often useful for test harnesses, administrative
inte***ce
cmd是乙個提供一種基於面向命令列直譯器編寫程式的簡單框架,這些通常用於測試工具,管理工具和稍後包裹在更加複雜的介面的原型非常有用。
二:cmd的基本使用
編寫基於cmd的程式要注意以下幾個點:1.要繼承自cmd.cmd類
2.要先初始化父類
3.所有的命令都是以do_開頭
4.所有的命令幫助都是以help_開頭
5.乙個命令對應乙個幫助,如果沒有幫助執行錯誤命令會出錯。
三:cmd例子
# -*- coding: utf-8 -*-
#!/usr/bin/python env
#引入一些包
import sys
import cmd
import os
#繼承cmd.cmd類
class cli(cmd.cmd):
def __init__(self):
#先初始化父類
cmd.cmd.__init__(self)
#設定命令列的提示符
self.prompt = ""
#第乙個命令dir命令,帶乙個引數
def do_dir(self,arg):
if not arg:
self.help_dir()
elif os.path.exists(arg):
print "\n".join(os.listdir(arg))
else:
print "no such pathexists"
#帶第二個命令
def do_quit(self,arg):
return true
#dir命令的幫助
def help_dir(self):
print "syntax:dir path -- displaya list of files and directories"
#help命令的幫助
def help_quit(self):
#命令的別名
do_q = do_quit
if __name__ == "__main__":
#開始執行cmd
cli = cli()
#迴圈接受使用者輸入的命令
cli.cmdloop()
四:執行結果[root@work python]# python cmdtest.py
dirsyntax:dir path -- displaya list of files and directories
dir /tmp
keyring-8mjwb8
ferret
.ice-unix
keyring-6y9txt
orbit-gdm
.x11-unix
keyring-e2wqqa
.x0-lock
pulse-weknqpdx0htq
keyring-aoiv8e
keyring-i47ize
keyring-bshjbu
pulse-8tdhlwhpdc2j
keyring-viwkfe
keyring-m5pgn7
keyring-pb8q2x
keyring-tme3bw
keyring-gtw1ih
.esd-0
help
documented commands (type help ):
dir quit
undocumented commands:
help q
q
golang命令行庫cobra的使用
golang命令行庫cobra的使用 一 簡介 cobra是乙個golang庫,它提供了乙個簡單的程式設計介面來建立類似於git和go工具的強大的現代cli介面。cobra同時提供了乙個工具,幫程式設計師快速實現cli框架。cobra具有如下強大的功能 2.完全相容posix命令列模式 3.巢狀子命...
python 命令列引數
本篇將介紹python中sys,getopt模組處理命令列引數 如果想對python指令碼傳引數,python中對應的argc,argv c語言的命令列引數 是什麼呢?需要模組 sys 引數個數 len sys.argv 指令碼名 sys.argv 0 引數1 sys.argv 1 引數2 sys....
python 命令列引數
python呼叫時,可以直接在命令列中加入呼叫引數,通過sys模組的argv來進行解析,如下 lixinglei bogon someother python param.py port 8080 username lixinglei lixinglei bogon someother vim pa...