os VS shutil

# ### os模块 与 shutil模块
"""
os 新建/删除
shutil 复制/移动
"""
import os
os.chdir("/home/wangwen/mywork")

#os.mknod 创建文件
# os.mknod("ceshi111.txt")

#os.remove 删除文件
# os.remove("ceshi111.txt")

#os.mkdir 创建目录(文件夹)
# os.mkdir("ceshi200")

#os.rmdir 删除目录(文件夹)
# os.rmdir("ceshi200")

#os.rename 对文件,目录重命名
# os.rename("ceshi100","ceshi1001")

#os.makedirs 递归创建文件夹
# os.makedirs("a/b/c/d/e/f")

#os.removedirs 递归删除文件夹(空文件夹)
# os.removedirs("a/b/c/d/e/f")

# ### shutil
import shutil

# 1. 单纯仅仅复制文件内容
#copyfileobj(fsrc, fdst[, length=16*1024]) 复制文件 (length的单位是字符(在r模式下,read单位是字符个数,在rb模式read单位是字节个数))
# fp1 = open("ceshi100.py",mode="r",encoding="utf-8")
# fp2 = open("ceshi101.py",mode="w",encoding="utf-8")
# shutil.copyfileobj(fp1,fp2)

#copyfile(src,dst) #单纯的仅复制文件内容 , 底层调用了 copyfileobj
# shutil.copyfile("ceshi101.py","ceshi102.py")

# 2. 单纯仅仅复制文件权限
#copymode(src,dst) #单纯的仅复制文件权限 , 不包括内容 (虚拟机共享目录都是默认777)
# shutil.copymode("ceshi102.py","103.py")

#copystat(src,dst) #复制所有状态信息,包括权限,修改时间等,不包括内容
# shutil.copystat("ceshi102.py","104.py")


# 3. 文件内容 + 文件权限
#copy(src,dst) #复制文件权限和内容
# shutil.copy("ceshi102.py","105.py")
#copy2(src,dst) #复制文件权限和内容,还包括权限,时间等
# shutil.copy2("ceshi102.py","106.py")

# 4.复制 / 删除
#copytree(src,dst) #拷贝文件夹里所有内容(递归拷贝)
# shutil.copytree("ceshi1001","ceshi1002")

#rmtree(path) #删除当前文件夹及其中所有内容(递归删除)
# shutil.rmtree("ceshi1002")

# 5.移动 move(path1,paht2) #移动文件或者文件夹
# 移动文件夹
# shutil.move("ceshi1001","../ceshi1003")
# 移动文件
shutil.move("104.py","../111.py")







原文地址:https://www.cnblogs.com/max404/p/11785058.html