1. 程式人生 > >python中的shutil模塊

python中的shutil模塊

shutil模塊

shutil.copyfile(src,dst)
src和dst 都必須是文件,把源文件src復制到目標文件dst中去,如果目標文件dst存在的話,文件內容會被覆蓋;不存在會復制文件src;目標地址需具備可寫權限,拋出的異常信息為IOException

>> import shutil
>> shutil.copyfile("e:\python\0521.txt","e:\0521.txt")
>> shutil.copyfile("e:\python\1.jpg","e:\1.jpg")

Shutil.copy(src,dst)
把一個文件src復制到dst中去,和shutil.copyfile()的區別是:src 是文件,但是dst可以是目錄和文件;
如果目標文件dst存在的話,文件內容會被覆蓋;不存在會復制文件src;目標地址需具備可寫權限,拋出的異常信息為IOException

>> shutil.copy("e:\python\2.txt","c:\")
>> shutil.copy("e:\python\2.txt","c:\3.txt")

Shutil.move(src,dst)

移動文件或重命名文件
可以把文件src重命名為dst,也可以把文件src移動到dst中去

>> shutil.move("e:\python\2.txt","e:\python\2-2.txt")
>> shutil.move("e:\python\2-2.txt","c:\3-3.txt")

Shutil.copy2(src,dst)
在copy上的基礎上文件最後訪問時間與修改時間也復制過來了

>> shutil.copy2("e:\python\222.txt","c:\222.txt")

Shutil.copytree(olddir,newdir,True/False) 復制文件夾及其下文件
把olddir拷貝一份newdir,如果第3個參數是True,則復制目錄時將保持文件夾下的符號連接,如果第3個參數是False,則將在復制的目錄下生成物理副本來替代符號連接

>> shutil.copytree("e:\python","c:\python",False)
>> shutil.copytree("e:\python","c:\python2")

Shutil.rmtree(path)
遞歸刪除一個目錄及目錄內的所有文件

>> shutil.rmtree("c:\python")

shutil.copymode( src, dst)
只是會復制其權限其他的東西是不會被復制的

shutil.copystat( src, dst)
復制權限、最後訪問時間、最後修改時間

python中的shutil模塊