zoukankan      html  css  js  c++  java
  • os 和 shutil 模块

    # ### os 和 shutil 模块
    '''
    文件操作领域:
    os     => 新建和删除
    shutil => 复制和剪切
    '''
    import os
    # 默认更改工作路径
    os.chdir("/home/wangwen/mywork")
    #os.mknod   创建文件
    # os.mknod("ceshi1014.txt")
    
    #os.remove  删除文件
    # os.remove("ceshi1014.txt")
    
    #os.mkdir   创建目录(文件夹)
    # os.mkdir("ceshi1001")
    
    #os.rmdir   删除目录(文件夹)
    # os.rmdir('ceshi1001')
    
    #os.rename  对文件,目录重命名
    # os.rename("ceshi1001","ceshi1002")
    
    #os.makedirs   递归创建文件夹
    # os.makedirs("a/b/c/d")
    
    #os.removedirs 递归删除文件夹(空文件夹)
    # os.removedirs("./a/b/c/d")
    
    
    # -- shutil模块 复制/移动/
    
    # (1)仅仅复制文件内容的
    #copyfileobj(fsrc, fdst[, length=16*1024])  复制文件 (length的单位是字符(表达一次读多少字符))
    import shutil
    fp1 = open("./3.txt","r",encoding="utf-8")
    fp2 = open("./4.txt","w",encoding="utf-8")
    shutil.copyfileobj(fp1,fp2)
    #copyfile(src,dst)   #单纯的仅复制文件内容 , 底层调用了 copyfileobj
    shutil.copyfile("3.txt","5.txt")  # copyfile 如果没有这个文件,自动创建
    
    # (2)仅仅复制权限的
    #copymode(src,dst)   #单纯的仅复制文件权限 , 不包括内容  (虚拟机共享目录都是默认777)
    shutil.copymode("3.txt","6.txt")  # copymode 复制权限等操作的时,该文件必须存在
    #copystat(src,dst)   #复制所有状态信息,包括权限,组,用户,修改时间等,不包括内容
    shutil.copystat("3.txt","7.txt")
    
    # (3)既复制文件内容 还 复制文件权限的 *****	
    #copy(src,dst)       #复制文件权限和内容
    shutil.copy("3.txt","8.txt")
    #copy2(src,dst)      #复制文件权限和内容,还包括权限,组,用户,时间等
    shutil.copy2("3.txt","9.txt")
    
    
    # (4)递归拷贝或删除 
    #copytree(src,dst)   #拷贝文件夹里所有内容(递归拷贝)
    # shutil.copytree("/home/wangwen/mywork","/home/wangwen/mywork2")
    #rmtree(path)        #删除当前文件夹及其中所有内容(递归删除)
    # shutil.rmtree("/home/wangwen/mywork2")
    #move(path1,paht2)   #移动文件或者文件夹
    # shutil.move("./ceshi1002","../ceshi10003")
    

      

  • 相关阅读:
    2007417 13:01:00 运行时数据结构
    2008515 1:38:00 为受灾的人们祈福,祭那些在地震中离开的人
    200732 19:00:00 一段设置8253芯片的程序
    从实模式到保护模式
    200739 18:01:00 linux界的元老
    2007311 19:11:00 cpu执行第一条指令时情形
    20061127 19:54:00 在你心中有这样的一个人吗? (转)
    linux0.11内存管理——try_to_share()
    2007413 20:46:00 linux0.11之copy_page_tables()函数见解
    POJ1258AgriNet
  • 原文地址:https://www.cnblogs.com/huangjiangyong/p/10920527.html
Copyright © 2011-2022 走看看