美文网首页python 技术的魅力思科DevNet
python中shutil文件操作模块的使用

python中shutil文件操作模块的使用

作者: 君惜丶 | 来源:发表于2017-06-01 11:35 被阅读985次

    shutil

    是一种高层次的文件操作工具
    类似于高级API,而且主要强大之处在于其对文件的复制与删除操作更是比较支持好。

    使用方法

    copyfile( src, dst) 从源src复制到dst中去。当然前提是目标地址是具备可写权限。抛出的异常信息为IOException. 如果当前的dst已存在的话就会被覆盖掉

    copymode( src, dst) 只是会复制其权限其他的东西是不会被复制的

    copystat( src, dst) 复制权限、最后访问时间、最后修改时间

    copy( src, dst) 复制一个文件到一个文件或一个目录

    copy2( src, dst) 在copy上的基础上再复制文件最后访问时间与修改时间也复制过来了,类似于cp –p的东西

    copy2( src, dst) 如果两个位置的文件系统是一样的话相当于是rename操作,只是改名;如果是不在相同的文件系统的话就是做move操作

    copytree(olddir,newdir,True/Flase) 把olddir拷贝一份newdir,如果第3个参数是True,则复制目录时将保持文件夹下的符号连接,如果第3个参数是False,则将在复制的目录下生成物理副本来替代符号连接

    shutil.copyfileobj(fsrc, fdst[, length])

    将文件内容拷贝到另一个文件中

    #!/usr/bin/env python
    # _*_ coding:utf-8 _*_
    __author__ = 'junxi'
    
    import shutil
    
    # 将文件内容拷贝到另一个文件中
    shutil.copyfileobj(open('old.txt', 'r'), open('new.txt', 'w'))
    
    # 拷贝文件
    shutil.copyfile('old.txt', 'old1.txt')
    
    # 仅拷贝权限。内容、组、用户均不变
    shutil.copymode('old.txt', 'old1.txt')
    
    # 复制权限、最后访问时间、最后修改时间
    shutil.copystat('old.txt', 'old1.txt')
    
    # 复制一个文件到一个文件或一个目录
    shutil.copy('old.txt', 'old2.txt')
    
    # 在copy上的基础上再复制文件最后访问时间与修改时间也复制过来了
    shutil.copy2('old.txt', 'old2.txt')
    
    # 把olddir拷贝一份newdir,如果第3个参数是True,则复制目录时将保持文件夹下的符号连接,如果第3个参数是False,则将在复制的目录下生成物理副本来替代符号连接
    shutil.copytree('C:/Users/xiaoxinsoso/Desktop/aaa', 'C:/Users/xiaoxinsoso/Desktop/bbb')
    
    # 移动目录或文件
    shutil.move('C:/Users/xiaoxinsoso/Desktop/aaa', 'C:/Users/xiaoxinsoso/Desktop/bbb') # 把aaa目录移动到bbb目录下
    
    # 删除一个目录
    shutil.rmtree('C:/Users/xiaoxinsoso/Desktop/bbb') # 删除bbb目录
    

    相关文章

      网友评论

        本文标题:python中shutil文件操作模块的使用

        本文链接:https://www.haomeiwen.com/subject/alisfxtx.html