zoukankan      html  css  js  c++  java
  • python中的shutil模块

    python中的shutil模块


    shutil模块对文件和文件集合提供了许多高级操作,特别是提供了支持文件复制和删除的函数。

    目录和文件操作

    • shutil.copyfileobj(fsrc, fdst[, length]):拷贝文件内容到另一个文件,可以指定拷贝的大小。
    # 拷贝test1的内容到test2
    >>>  shutil.copyfileobj(open('test1'),open('test2','w'))
    
    • shutil.copyfile(src, dst):拷贝文件,不包含元数据。
    • shutil.copymode(src, dst):仅拷贝文件权限,对文件内容、用户和组不影响。
    • shutil.copystat(src, dst):仅拷贝文件权限、最后访问时间、最后修改时间,对文件内容、用户和组不影响。
    • shutil.copy(src, dst):拷贝文件数据和权限,不含文件的创建时间和修改时间。
    • shutil.copy2(src, dst):拷贝文件,包含元数据
    • shutil.ignore_patterns(*patterns):忽略指定的文件,通常和copytree配合使用
    • shutil.copytree(src, dst, symlinks=False, ignore=None, copy_function=copy2, ignore_dangling_symlinks=False):递归复制目录及其子目录的文件和状态信息。
    #  递归复制Python3目录中的文件到Python4中,其中忽略以点m4和py结尾的文件。
    >>> shutil.copytree('Python3','Python4',ignore=shutil.ignore_patterns('*.m4','*.py'))
    
    • shutil.rmtree(path):递归删除目录
    • shutil.move(src, dst, copy_function=copy2):递归移动文件或者目录,如mv
    • shutil.disk_usage(path):以元组的形式返回一个磁盘统计信息(total,used,free)
    • shutil.chown(path, user=None, group=None):改变path的用户和组
    • shutil.which(cmd):返回执行cmd的绝对路径,类似于shell中的which cmd

    归档操作

    • shutil.make_archive(base_name, format[, root_dir[, base_dir[, verbose[, dry_run[, owner[, group[, logger]]]]]]]):打包文件或者压缩文件,如tar,zip。
      • base_name:打包后的文件名
      • format:压缩格式,如:zip,tar,gztar,bztar,xztar
      • root_dir:打包的根目录
      • base_dir:要进行压缩的源文件或者目录,root_dir和base_dir both默认为当前目录
      • dry_run: 如果为True,打包文件将不会创建,但是会进行日志记录
      • owner,group:指定用户和组,默认是当前环境用户和组
      • logger:用于记录日志,通常是logging.Logger的一个实例
    • shutil.get_archive_formats():返回支持的归档格式的列表
    • shutil.unpack_archive(filename[, extract_dir[, format]]):解压缩一个归档文件
      • filename:压缩文档的绝对路径
      • extract_dir:解压缩路径,默认当前目录
      • format:压缩格式,默认使用文件后缀名的格式
    • shutil.get_unpack_formats():返回支持解压缩格式的列表
  • 相关阅读:
    Storm 第一章 核心组件及编程模型
    四 Hive整合HBase
    Hbase第五章 MapReduce操作HBase
    swift 附属脚本
    swift 方法
    swift 属性
    swift 类和结构体
    swift 枚举类型
    swift 闭包
    Swift 函数
  • 原文地址:https://www.cnblogs.com/dianel/p/10776981.html
Copyright © 2011-2022 走看看