pythonshutil
❶ python shutil 模塊
shutil 可以看作 sh + util,即 shell 工具之意,該模塊提供了一些針對文件和文件夾的高級操作,如:拷貝、刪除、移動等,shutil 模塊是對 os 模塊的補充。
fileobj(fsrc, fdst, length=16*1024)
復制對象 fsrc 的內容到 fdst,如果 fdst 不存在則自動創建,length 表示緩沖大小,如果是負數表示直接復制,默認為值為 16*1024。示例如下:
shutil.file(src, dst, *, follow_symlinks=True)
復制文件 src 的內容到 dst 並返回 dst,如果 dst 不存在則自動創建,src 和 dst 是字元串類型的路徑名,如果 src 和 dst 指向同一個文件,拋出 SameFileError。示例如下:
mode(src, dst, *, follow_symlinks=True)
復制文件 src 的許可權到 dst,src 和 dst 是字元串類型的路徑名,如果 follow_symlinks 為 False 且 src 和 dst 都是符號鏈接或友,將修改 dst 符號鏈接文件而非源文件的許可權。示例如下:
stat(src, dst, *, follow_symlinks=True)
復制 src 的許可權、最後訪問時間、最後修改時間以及標志到 dst,src 和 dst 是字元串類型的路徑名,可以是文件或目錄,在Linux平台上還會復制擴展屬性。示例如下:
(src, dst, *, follow_symlinks=True)
復制文件 src 的內容和許可權到 dst,dst 可以是文件或文件夾,如果是文件,函數的返回值就是 dst,如果是文件夾,函數的返回值就是 src 的文件名與 dst 的路徑拼接,src 和 dst 都是字元串類型,如果 dst 指向一個文件夾,則創建與 src 同名的新文件。示例如下:
2(src, dst, *, follow_symlinks=True)
該方法會保留 src 的所有元數據(如創建時間、修改時間等),其他與 () 相同,當 follow_symlinks 為 False 且 src 為軟鏈接時,dst 將作為軟鏈接被創建並拷貝 src 的所有元數據到 dst。示例如下:
ignore_patterns(*patterns)
創建並返回一個函數,可傳遞到 tree() 中作為 ignore 參數的值,忽略滿足匹配模式的文件和目錄。示例如下:
tree(src, dst, symlinks=False, ignore=None, _function=2, ignore_dangling_symlinks=False)
遞歸復制以 src 為根目錄的整個目錄樹,返回目標目錄 dst,dst 必須是不存在的目錄,它和它不存在的父目錄都將被創建,使用 stat() 復制目錄元數據,使用 2() 復制文件內容和元數據。
示例如下:
rmtree(path, ignore_errors=False, onerror=None)
刪除目錄,path 必須指定一個目錄。示例如下:
move(src, dst, _function=2)
移動文件或目錄到目標位置,如果目標位置 dst 是一個存在扒配的目錄,將 src 移動到 dst 路徑下。示例如下:
disk_usage(path)
檢測磁碟使用信息,衫此槐返回值為元組。示例如下:
which(cmd, mode=os.F_OK | os.X_OK, path=None)
返回 cmd 調用的可執行文件路徑,沒有返回 None。mode:用於判斷文件是否存在或可執行,path:cmd 的查找路徑。示例如下:
chown(path, user=None, group=None)
改變指定 path 的所有者和所屬組,user 和 group 參數,可以是系統上的用戶名、組名或 uid/gid,至少需要傳遞其中一個參數。
make_archive(base_name, format, root_dir=None, base_dir=None, verbose=0, dry_run=0, owner=None, group=None, logger=None)
創建歸檔文件,並返回歸檔文件的名稱。
看下示例:
get_archive_formats()
返回支持的歸檔格式列表,列表中的每個元素是 (name, description) 形式的元組。示例如下:
register_archive_format(name, function, extra_args=None, description=』』)
注冊一個格式名並綁定到一個壓縮時使用的程序,function 是用於解包存檔文件的可調用函數。
unregister_archive_format(name)
從支持的歸檔格式中移除 name。
unpack_archive(filename, extract_dir=None, format=None)
解壓歸檔文件。filename:歸檔文件名稱;extract_dir:歸檔文件解壓的目標位置;format:使用指定格式的解壓器解壓歸檔文件。
register_unpack_format(name, extensions, function, extra_args=None, description=』』)
注冊格式為 name 的解壓器。
unregister_unpack_format(name)
從支持的解壓格式中移除 name。
get_unpack_formats()
返回支持的解壓格式列表,列表中的每個元素是 (name, extensions, description) 形式的元組。
get_terminal_size()
查詢終端大小。示例如下:
❷ 如何用python刪除一個文件
os.remove('文件') 直接從系統裡面刪除文件,不經過回收站。
os.rmdir('文件夾') 直接從系統裡面刪除空文件夾,不經過回收站。
shutil.rmtree('文件夾') 直接從系統裡面刪除文件夾(文件夾裡面可以有別的文件),不經過回收站。所以要小心不要誤刪。
可使用第三方包,send2trash
send2trash.send2trash() 可以刪除任何東西,刪除的東西送回回收站。
❸ python裡面shutil是什麼
shutil 是高級的文件,文件夾,壓縮包處理模塊。
1.shutil.fileobj(fsrc, fdst[, length])
將文件內容拷貝到另一個文件中
import shutil
shutil.fileobj(open('old.xml','r'), open('new.xml', 'w'))
2.shutil.file(src, dst)
拷貝文件
shutil.file('f1.log', 'f2.log')
3.shutil.mode(src, dst)
僅拷貝許可權。內容、組、用戶均不變
shutil.mode('f1.log', 'f2.log')
4.shutil.stat(src, dst)
僅拷貝狀態的信息,包括:mode bits, atime, mtime, flags
shutil.stat('f1.log', 'f2.log')
5.shutil.(src, dst)
拷貝文件和許可權
shutil.('f1.log', 'f2.log')
6.shutil.2(src, dst)
拷貝文件和狀態信息
shutil.2('f1.log', 'f2.log')
7.shutil.ignore_patterns(*patterns)
shutil.tree(src, dst, symlinks=False, ignore=None)
遞歸的去拷貝文件夾
shutil.tree('folder1', 'folder2', ignore=shutil.ignore_patterns('*.pyc', 'tmp*'))
shutil.tree('f1', 'f2', symlinks=True, ignore=shutil.ignore_patterns('*.pyc', 'tmp*'))
8.shutil.rmtree(path[, ignore_errors[, onerror]])
遞歸的去刪除文件
shutil.rmtree('folder1')
9.shutil.move(src, dst)
遞歸的去移動文件,它類似mv命令,其實就是重命名。
shutil.move('folder1', 'folder3')
10.shutil.make_archive(base_name, format,...)
創建壓縮包並返迴文件路徑,例如:zip、tar
創建壓縮包並返迴文件路徑,例如:zip、tar
base_name: 壓縮包的文件名,也可以是壓縮包的路徑。只是文件名時,則保存至當前目錄,否則保存至指定路徑,
如:www =>保存至當前路徑
如:/Users/wupeiqi/www =>保存至/Users/wupeiqi/format: 壓縮包種類,「zip」, 「tar」, 「bztar」,「gztar」
root_dir: 要壓縮的文件夾路徑(默認當前目錄)
owner: 用戶,默認當前用戶
group: 組,默認當前組
logger: 用於記錄日誌,通常是logging.Logger對象
❹ python shutil模塊函數「file」和「」有什麼區別
file(src, dst) #src, dst 都需是文件名, 如果dst 存在或無許可權,會拋出異常
(src, dst) #dst 可以是目錄名。
❺ Python復制文件命令合集
python的shutil模塊提供了便捷的復制文件命令
shutil.(srcfile,dstfile) #拷貝文件,目標文件必須存在,否則就會報錯
shutil.file(srcfile,dstfile) #拷貝文件,目標 文件無需巧蘆凳存在
shutil.tree(srcdir,dstdir) #srcdir為源目錄,dstdir為目標目錄,復制時,如果dstdir已經存在時,會報FileExistsError錯誤,提示「當文件已存在時,無法創建該文件」
shutil.mode(src, dst) # 僅拷貝許可權。內孝旅容、組、用戶均不變,目標文件嘩昌必須存在