python shutil_python3 shutil模块
穿插一下sys模块的argv方法,它可以接收执行脚本后面的参数
首先在脚本里面定义如下:
import sys
print(sys.argv)
print(sys.argv[0])
print(sys.argv[1])
print(sys.argv[2])
执行脚本:
[root@localhost ~]# python3 aa.py a b
['aa.py', 'a', 'b', 'c'] //对应着print(sys.argv)
aa.py //对应着print(sys.argv[0])
a //对应着print(sys.argv[1])
b //对应着print(sys.argv[2])
shutil模块的作用:高级的文件、文件夹、压缩包处理模块
1、文件内容的拷贝,使用copyfileobj方法
import shutil
f1 = open("passwd","r",encoding="utf-8")
f2 = open("passwd.bak","w",encoding="utf-8")
shutil.copyfileobj(f1,f2)
还有一种比较简单的方式:
>>> import shutil
>>> shutil.copyfile("passwd","passwd.old") //使用copyfile方法就可直接对文件进行复制
'passwd.old'
2、仅拷贝文件的权限,其余属性都不拷贝,前提是必须有目标文件,如果目标文件不存在则报错
[root@localhost ~]# ll passwd
-rwxr-xr-x. 1 xiaoming xiaoming 1576 3月 21 14:52 passwd
[root@localhost ~]# ll passwd.bak //此文件内容为空
-rw-r--r--. 1 root root 0 3月 21 14:56 passwd.bak
>>> import shutil
>>> shutil.copymode("passwd","passwd.bak") //copymode对文件的权限进行拷贝
再进行查看两个文件的属性:
[root@localhost ~]# ll passwd
-rwxr-xr-x. 1 xiaoming xiaoming 1576 3月 21 14:52 passwd
[root@localhost ~]# ll passwd.bak //文件内容为空,但是仅有权限发生了改变
-rwxr-xr-x. 1 root root 0 3月 21 14:56 passwd.bak
3、拷贝文件的所有状态信息,不拷贝文件内容
>>> import shutil
>>> shutil.copystat("passwd","passwd.bak")
4、拷贝文件和权限,但是不拷贝属主和属组
>>> shutil.copy("passwd","passwd.bak")
'passwd.bak'
5、拷贝整个目录树
>>> import shutil
>>> shutil.copytree("/etc","/etc_new")
删除整个目录树
>>> shutil.rmtree("/etc_new")
6、文件的移动
>>> import shutil
>>> shutil.move("passwd","/tmp")
'/tmp/passwd'
7、文件的打包
>>> shutil.make_archive("test","gztar","/etc") //"test"为打包后的名称,可以指定路径;"gztar"为打包类型,还可以写zip;"/etc"为需要打包的程序
'/root/test.tar.gz'
文件的打包还可以使用另外一种方式
import tarfile
tar = tarfile.open("XXX.tar.gz","w") //"XXX.tar.gz"打开文件的名字,也就是tar包名
tar.add("/etc/passwd",arcname="passwd") //添加需要压缩的文件
tar.add("/etc/shadow",arcname="shadow")
tar.close()
有了压缩,那么解压呢?
tar = tarfile.open("XXX.tar.gz","r")
tar.extractall("/usr/local") //tar.extractall()可设置解压路径
tar.close()
python shutil_python3 shutil模块相关推荐
- python的shutil模块是内置的_Python之shutil模块11个常用函数详解,python内置函数是什么...
Python之shutil模块11个常用函数详解,python内置函数是什么 shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查 ...
- Python的shutil模块解析
目录 前言 一.文件复制 1. shutil.copy(src, dst) 2. shutil.copyfile(src, dst) 3. shutil.copy2(src, dst) 4. shut ...
- python中shutil模块_python文件、文件夹、压缩包处理模块-shutil模块-阿里云开发者社区...
shutil模块 高级的文件.文件夹.压缩包 处理模块 本节内容基本在linux下python交互环境实现 复制移动文件.文件夹 将文件内容拷贝到另一个文件中,可以部分内容 格式如下: ``` shu ...
- python中shutil模块的用法_python中的os,shutil模块的定义以及用法
#os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为'\\'os.name 字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户 ...
- 【Python入门】Python之shutil模块11个常用函数详解
shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查看等方法,还提供了对文件以及目录的路径操作.shutil模块提供了移动.复制. ...
- python之shutil模块
1.shutil模块介绍 shutil(或称为 shell 工具)模块中包含一些函数,让你在 Python 程序中复制.移动.改名和删除文件.要使用 shutil 的函数,首先需要 import sh ...
- python shutil_Python shutil模块
shutil模块下 copy(复制).rm(删除).move(移动) 常用方法举例. copyfileobj(fsrc, fdst[, length]) copyfile(src, dst, *, f ...
- python中shutil模块的用法-高级文件操作模块
目录 前言 一.shutil是什么? 二.使用步骤 1. 安装shutil库 2. shutil库的使用 3. 复制函数 3.1 shutil.copy(src,dst) ==> 拷贝文件和权限 ...
- 【python】shutil模块
大家好,我是胡亥大魔王.今天介绍python中的shutil模块 shutil (或称为 shell 工具)模块中包含一些函数,可以在python程序中复制.移动.改名和删除文件 复制文件和文件夹 复 ...
最新文章
- 2021-02-21 Python Easyocr 图片文字识别
- Python基于聚类算法实现密度聚类(DBSCAN)计算
- iOS之CALayer的CAEmitterLayer实现“红包雨”效果
- java socket smtp_JAVA Socket实现smtp发送邮件
- leetcode 128最长连续序列
- Qt第五课 无构造函数可以接受源类型,或构造函数重载决策不明确
- [react-router] React-Router 3和React-Router 4有什么变化?添加了什么好的特性?
- 【miscellaneous】北斗短报文
- ViewPage最全解析
- 从svn导入多个项目_GIT和SVN相比有哪些优势?如何在团队内部推行GIT?
- maven编译报程序包不存在_宝马730i空调不制冷,报冷却剂压缩机当前存在故障
- java encode乱码_java 中文乱码问题的解决
- android阅读器里的 txt 文本处理分页功能的实现:
- 暑假规划及小学期总结
- 小程序wx.downloadFile下载pdf并保存
- jQuery生成动态表格
- div 配搭 display:inline-block
- 【钛媒体】人人不死,只是凋零
- 记安装win10和deepin双系统的经过(附一些常见问题和解决方案)
- Ubuntu 1804 升级内核