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) # 仅拷贝权限。内孝旅容、组、用户均不变,目标文件哗昌必须存在