穿插一下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模块相关推荐

  1. python的shutil模块是内置的_Python之shutil模块11个常用函数详解,python内置函数是什么...

    Python之shutil模块11个常用函数详解,python内置函数是什么 shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查 ...

  2. Python的shutil模块解析

    目录 前言 一.文件复制 1. shutil.copy(src, dst) 2. shutil.copyfile(src, dst) 3. shutil.copy2(src, dst) 4. shut ...

  3. python中shutil模块_python文件、文件夹、压缩包处理模块-shutil模块-阿里云开发者社区...

    shutil模块 高级的文件.文件夹.压缩包 处理模块 本节内容基本在linux下python交互环境实现 复制移动文件.文件夹 将文件内容拷贝到另一个文件中,可以部分内容 格式如下: ``` shu ...

  4. python中shutil模块的用法_python中的os,shutil模块的定义以及用法

    #os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为'\\'os.name 字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户 ...

  5. 【Python入门】Python之shutil模块11个常用函数详解

    shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查看等方法,还提供了对文件以及目录的路径操作.shutil模块提供了移动.复制. ...

  6. python之shutil模块

    1.shutil模块介绍 shutil(或称为 shell 工具)模块中包含一些函数,让你在 Python 程序中复制.移动.改名和删除文件.要使用 shutil 的函数,首先需要 import sh ...

  7. python shutil_Python shutil模块

    shutil模块下 copy(复制).rm(删除).move(移动) 常用方法举例. copyfileobj(fsrc, fdst[, length]) copyfile(src, dst, *, f ...

  8. python中shutil模块的用法-高级文件操作模块

    目录 前言 一.shutil是什么? 二.使用步骤 1. 安装shutil库 2. shutil库的使用 3. 复制函数 3.1 shutil.copy(src,dst) ==> 拷贝文件和权限 ...

  9. 【python】shutil模块

    大家好,我是胡亥大魔王.今天介绍python中的shutil模块 shutil (或称为 shell 工具)模块中包含一些函数,可以在python程序中复制.移动.改名和删除文件 复制文件和文件夹 复 ...

最新文章

  1. 2021-02-21 Python Easyocr 图片文字识别
  2. Python基于聚类算法实现密度聚类(DBSCAN)计算
  3. iOS之CALayer的CAEmitterLayer实现“红包雨”效果
  4. java socket smtp_JAVA Socket实现smtp发送邮件
  5. leetcode 128最长连续序列
  6. Qt第五课 无构造函数可以接受源类型,或构造函数重载决策不明确
  7. [react-router] React-Router 3和React-Router 4有什么变化?添加了什么好的特性?
  8. 【miscellaneous】北斗短报文
  9. ViewPage最全解析
  10. 从svn导入多个项目_GIT和SVN相比有哪些优势?如何在团队内部推行GIT?
  11. maven编译报程序包不存在_宝马730i空调不制冷,报冷却剂压缩机当前存在故障
  12. java encode乱码_java 中文乱码问题的解决
  13. android阅读器里的 txt 文本处理分页功能的实现:
  14. 暑假规划及小学期总结
  15. 小程序wx.downloadFile下载pdf并保存
  16. jQuery生成动态表格
  17. div 配搭 display:inline-block
  18. 【钛媒体】人人不死,只是凋零
  19. 记安装win10和deepin双系统的经过(附一些常见问题和解决方案)
  20. Ubuntu 1804 升级内核

热门文章

  1. 计算机打印机软驱,用软驱、硬盘、打印机组合成乐器?外国人真会玩!
  2. 全媒舍:报纸媒体宣传过程中要考虑综合性
  3. 基于以太坊的智能合约开发教程Solidity modifier
  4. dtree 的使用方法(详细教程)
  5. zipline中TradingCalendar源码分析
  6. kuburnetes的Taints与Tolerations
  7. Kinect简单的动作识别
  8. 计算机考研901的学校,天津大学初试专业课科目取消902软件工程改考901
  9. NVIDIA GeForce GT 730 配置 CUDA
  10. 大话设计模式——第二章:商场促销策略模式