Python指令碼練習一

風的王子發表於2013-10-31

批量將指定目錄下的所有檔案中的$HADOOP_HOME$替換成/home/ocetl/app/hadoop


#!/usr/bin/python

import os

import re

#list files

def listFiles(dirPath):

    fileList=[]

    for root,dirs,files in os.walk(dirPath):

        for fileObj in files:

            fileList.append(os.path.join(root,fileObj))

    return fileList

 

def main():

    fileDir = "/home/hadoop/developer/csvpy/replstr"

    regex = ur'FUNC_SYS_ADD_ACCDETAIL'

    fileList = listFiles(fileDir)

    for fileObj in fileList:

        f = open(fileObj,'r+')

        all_the_lines=f.readlines()

        f.seek(0)

        f.truncate()

        for line in all_the_lines:

            f.write(line.replace('$HADOOP_HOME$','/home/ocetl/app/hadoop'))    

          

if __name__=='__main__':

    main() 

相關文章