python 整合linux命令搜索

今天需要在指定目录下搜索文件内容,没有早到合适命令,顺便学习了getopt的使用。

 

#!/usr/bin/python

import sys
import os
import getopt

def usage():
    print '''Help Information:
    find "path" | textsearch.py -w "findstring"
    -h: Show help information
    -xValue: ...'''


findWord = ""
try:
    opts,args=getopt.getopt(sys.argv[1:],'w:h')
    #print opts
    #print args
    for o,value in opts:
        if o=='-h':
            usage()
        if o=='-w':
            findWord = value.strip()
except getopt.GetoptError,err:
    print str(err)
    usage()
    sys.exit(0)
if len(findWord) ==0:
    usage()
    sys.exit(0)

#for i in range(200):
i = 0
while True:
    lineStr = sys.stdin.readline()
    if lineStr == None or len(lineStr)==0:
        break
    else:
        #print i,lineStr.strip()
        os.system("grep -n -H \""+findWord+"\" " + lineStr)
        #system( command)
    i+=1

 

使用方法如下:

find path | wordsearch.py -w "search word"

 

 

你可能感兴趣的:(linux,python,OS)