国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

Python實(shí)現(xiàn)Linux的find命令實(shí)例分享

2019-11-25 16:07:51
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

使用Python實(shí)現(xiàn)簡(jiǎn)單Linux的find命令

代碼如下:

#!/usr/bin/python#*-*coding:utf8*-*from optparse import OptionParserimport osimport sys#使用選項(xiàng)幫助信息可以使用中文reload(sys)sys.setdefaultencoding("utf-8")#定義選項(xiàng)以及命令使用幫助信息usage = sys.argv[0] + " Directory Options/n/n例:"+sys.argv[0] + " /etc --type f --name passwd/n/n注意:選項(xiàng)和目錄益可隨意調(diào)換,可以寫多個(gè)目錄,會(huì)從多個(gè)目錄中進(jìn)行查找"parser = OptionParser(usage)parser.add_option("--type",dest="filetype",action="store",default=False,help="指定查找對(duì)象的類型,文件類型可以是 d:代表目錄 f:代表文件")parser.add_option("--name",dest="name",action="store",default=False,help="指定查找對(duì)象的名稱,文件或目錄全名")options, args = parser.parse_args()def find(dir):directory = os.walk(dir)for x, y, z in directory:if options.filetype == "f":for name in z:if name == options.name:path = os.path.join(x,name)print(path)if options.filetype == "d":for name in y:if name == options.name:path = os.path.join(x,name)print(path)#判斷目錄是否存在,并且是否為目錄for dir in args:if os.path.exists(dir) == False:sys.stderr.write(dir+" is not found/n")exit(100)if os.path.isfile(dir):sys.stderr.write(dir+" is a file/n")exit(101)#判斷--type選項(xiàng)是否正確,只能跟 f 或者 dif not (options.filetype == "f" or options.filetype == "d"):sys.stderr.write("--type only support d or f/n")exit(102)if __name__ == "__main__":for dir in args:find(dir)

運(yùn)行結(jié)果如下:

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 余姚市| 彭山县| 乐安县| 翁牛特旗| 朔州市| 河曲县| 紫云| 昭觉县| 高唐县| 册亨县| 溧水县| 桦甸市| 安仁县| 平湖市| 汤原县| 广水市| 沂源县| 柯坪县| 宁明县| 泰州市| 昌平区| 钟祥市| 城固县| 卓资县| 柳州市| 秀山| 新绛县| 遂平县| 青川县| 财经| 河曲县| 台东县| 潜江市| 古田县| 乐清市| 两当县| 泰和县| 永年县| 邮箱| 新郑市| 梅州市|