[Python] modify *.c -> *.java script

来源:互联网 发布:左程云算法视频百度云 编辑:程序博客网 时间:2024/05/17 22:57
! /usr/bin/pythondef mod(filename):        if filename.endswith(".c"):                filename = filename[:filename.index(".c")]+".java"                return filename        else:                return 0def main():        import subprocess        tmp = subprocess.Popen(['ls','-l'],stdout=subprocess.PIPE)        string = tmp.stdout.read().strip()        stringlist = string.splitlines()        for line in stringlist:                final_line = string.split()[-1]                modify_line = mod(final_line)                if modify_line != 0:                        subprocess.call(['mv',final_line,modify_line])if __name__ == "__main__":        main()


使用subprocess.call可以解決問題,有時直接使用os.listdir及其他方法也可以很快解決問題鑑於此,此腳本還可以再次修改。



****************************************

[Solution 2]

2013.11.23 modified

os.listdir

os.path.splitext

os.rename

#! /user/bin/pythonimport osfilelist = os.listdir("./")for f in filelist:        if os.path.splitext(f)[1] == ".c":                os.rename(f,"%s.%s" % (os.path.splitext(f)[0],"java"))

另外,os.listdir可以用glob來取代

import glob

filelist = glob.glob("./*.c")

glob的作用會將目錄一起打印出來//os.listdir 沒有地址

原创粉丝点击