#拷貝檔案,可指定長度,fsrc和fdst都是一個檔案對象
def copyfileobj(fsrc, fdst, length=16*1024)
shutil.copyfileobj(open("ss1", "r"), open("ss2", "w"), length=1024)
# 拷貝檔案,dst必須可寫,存在則覆寫
def copyfile(src, dst, *, follow_symlinks=True)
shutil.copyfile("ss1", "ss2")
#拷貝檔案和權限,先copyfile後copymode
def copy(src, dst, *, follow_symlinks=True)
shutil.copy("ss1", "ss2")
#拷貝檔案和所有狀态資訊,如修改時間等
def copy2(src, dst, *, follow_symlinks=True)
shutil.copy2( src, dst)
#隻拷貝狀态資訊,包括權限,組,使用者,時間等
def copystat(src, dst, *, follow_symlinks=True)
shutil.copystat(src, dst)
#隻拷貝權限資訊,不更改檔案内容,組和使用者
def copymode(src, dst, *, follow_symlinks=True)
shutil.copymode(src, dst)
#移動或重命名
def move(src, dst, copy_function=copy2)
shutil.move(src, dst) #移動檔案或重命名
#遞歸的複制檔案内容及狀态資訊
def copytree(src, dst, symlinks=False, ignore=None, copy_function=copy2,
ignore_dangling_symlinks=False)
shutil.copytree(olddir, newdir, ignore=ignore_patterns('*.pyc', 'tmp*'))
#忽略.pyc和.tmp結尾的檔案
#遞歸删除一個目錄以及目錄内的所有内容
def rmtree(path, ignore_errors=False, onerror=None)
shutil.rmtree(src)
#壓縮打包
def make_archive(base_name, format, root_dir=None, base_dir=None, verbose=0,
dry_run=0, owner=None, group=None, logger=None)
base_name: 壓縮打包後的檔案名或者路徑名
format: 壓縮或者打包格式 "zip", "tar", "bztar"or "gztar"
gztar:gzip壓縮的tar檔案
bztar:bzip2格式的tar檔案
tar:未壓縮的tar檔案
zip:ZIP檔案
root_dir : 将哪個目錄或者檔案打包(也就是源檔案)
shutil.make_archive('tarball','tar',root_dir='/root/data')
作者:楊永明
出處:https://www.cnblogs.com/ming5218/
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接。