#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 程序功能:
# 从文件第一行,到查找到指定行的内容 输出到一个文件中
# 剩下的内容做为原文件

import os,sys  
import os.path
import string

def convert(filename):  
    try:
            #文件名(不包扩展名)
            filenamehead=(os.path.splitext(filename)[0]).replace('(', '\"(').replace(')',')\"')

            #扩展名
            suffix=os.path.splitext(filename)[1]

            #原文件名(已转义)
            filename=filename.replace('(', '\"(').replace(')',')\"')    

            #只对SQL的文件操作
            if(suffix.upper()==".SQL" ):

                #调用sed处理命令
                fileheadname=filenamehead + "_head.sql" 
                filenametmp="sed -n '1,/add_menu/p' " + filename + " > " + fileheadname 
                os.system(filenametmp)

                filebodyname=filenamehead + "_body.sql" 
                filenametmp="sed -n '1,/add_menu/!p' " + filename + " > " +  filebodyname
                os.system(filenametmp)

                rmfilename = 'rm -rf  ' + filename
                os.system(rmfilename)
                #print rmfilename

                mvfilename = ' mv ' + filebodyname + ' ' + filename
                os.system (mvfilename)

    except:  
        print " error"  

def explore(dir):  
    for root, dirs, files in os.walk(dir):  
        for file in files:  
            path = os.path.join(root, file)  
            convert(path)  

def main():  
    for path in sys.argv[1:]:  
        if os.path.isfile(path):  
            convert(path)       
        elif os.path.isdir(path):  
            explore(path)  

if __name__ == "__main__":  
    main()  
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐