作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝!
在操作系統下,用戶可以通過操作系統的命令來管理文件,參考linux文件管理相關命令。Python標准庫則允許我們從Python內部管理文件。相同的目的,我們有了兩條途徑。盡管在Python調用標准庫的方式不如操作系統命令直接,但有它自己的優勢。你可以利用Python語言,並發揮其他Python工具,形成組合的文件管理功能。Python or Shell? 這是留給用戶的選擇。本文中會盡量將兩者相似的功能相對應。
本文基於linux文件管理背景知識
os包
os包包括各種各樣的函數,以實現操作系統的許多功能。這個包非常龐雜。os包的一些命令就是用於文件管理。我們這里列出最常用的:
mkdir(path)
創建新目錄,path為一個字符串,表示新目錄的路徑。相當於$mkdir命令
rmdir(path)
刪除空的目錄,path為一個字符串,表示想要刪除的目錄的路徑。相當於$rmdir命令
listdir(path)
返回目錄中所有文件。相當於$ls命令。
remove(path)
刪除path指向的文件。
rename(src, dst)
重命名文件,src和dst為兩個路徑,分別表示重命名之前和之后的路徑。
chmod(path, mode)
改變path指向的文件的權限。相當於$chmod命令。
chown(path, uid, gid)
改變path所指向文件的擁有者和擁有組。相當於$chown命令。
stat(path)
查看path所指向文件的附加信息,相當於$ls -l命令。
symlink(src, dst)
為文件dst創建軟鏈接,src為軟鏈接文件的路徑。相當於$ln -s命令。
getcwd()
查詢當前工作路徑 (cwd, current working directory),相當於$pwd命令。
比如說我們要新建目錄new:
import os os.mkdir('/home/vamei/new')
shutil包
copy(src, dst)
復制文件,從src到dst。相當於$cp命令。
move(src, dst)
移動文件,從src到dst。相當於$mv命令。
比如我們想復制文件a.txt:
import shutil shutil.copy('a.txt', 'b.txt')
結合本章以及之前的內容,我們把Python打造成一個文件管理的利器了。
總結
os包: rmdir, mkdir, listdir, remove, rename, chmod, chown, stat, symlink
shutil包: copy, move