Python實現(xiàn)Linux的find命令實例分享
更新時間:2017年06月04日 10:17:23 作者:linuxidc
本文給大家分享的是使用python簡單實現(xiàn)模擬linux的find命令的實例代碼,推薦給大家,希望大家能夠喜歡
使用Python實現(xiàn)簡單Linux的find命令
代碼如下:
#!/usr/bin/python #*-*coding:utf8*-* from optparse import OptionParser import os import sys #使用選項幫助信息可以使用中文 reload(sys) sys.setdefaultencoding("utf-8") #定義選項以及命令使用幫助信息 usage = sys.argv[0] + " Directory Options\n\n例:"+sys.argv[0] + " /etc --type f --name passwd\n\n注意:選項和目錄益可隨意調(diào)換,可以寫多個目錄,會從多個目錄中進行查找" parser = OptionParser(usage) parser.add_option("--type", dest="filetype", action="store", default=False, help="指定查找對象的類型,文件類型可以是 d:代表目錄 f:代表文件") parser.add_option("--name", dest="name", action="store", default=False, help="指定查找對象的名稱,文件或目錄全名") 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選項是否正確,只能跟 f 或者 d if 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)
運行結(jié)果如下:
相關(guān)文章
Python OpenCV學(xué)習(xí)之圖形繪制總結(jié)
在圖像的任務(wù)中,不管是圖像檢測還是圖像識別,我們都需要通過繪制圖形和繪制文字對處理的結(jié)果進行說明,本篇就詳細(xì)介紹下OpenCV中的圖形的繪制,感興趣的可以了解一下2022-01-01python安裝并使用virtualenv管理包的詳細(xì)過程
本文主要介紹了Python的安裝過程和如何使用virtualenv管理包,首先,用戶需要訪問Python官網(wǎng)下載安裝包,并運行安裝程序,安裝完成后,在命令行輸入Python,顯示安裝的Python版本號,即表示安裝成功,感興趣的朋友一起看看吧2024-10-10python tkinter 設(shè)置窗口大小不可縮放實例
這篇文章主要介紹了python tkinter 設(shè)置窗口大小不可縮放實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03簡單談?wù)凱ython面向?qū)ο蟮南嚓P(guān)知識
由于馬上就要期末考試了,正在抓緊時間復(fù)習(xí) 所以這一篇就拖了很久,抱歉啦~ 今天會說說: 屬性私有,方法私有,重寫,魔術(shù)方法,需要的朋友可以參考下2021-01-01