首页 > 编程语言 >Python标准库分享之文件管理 (部分os包,shutil包)

Python标准库分享之文件管理 (部分os包,shutil包)

时间:2023-10-07 17:32:03浏览次数:48  
标签:文件 src Python dst 命令 path shutil os

在操作系统下,用户可以通过操作系统的命令来管理文件,参考linux文件管理相关命令。Python标准库则允许我们从Python内部管理文件。相同的目的,我们有了两条途径。尽管在Python调用标准库的方式不如操作系统命令直接,但有它自己的优势。你可以利用Python语言,并发挥其他Python工具,形成组合的文件管理功能。Python or Shell? 这是留给用户的选择。本文中会尽量将两者相似的功能相对应。

本文基于linux文件管理背景知识

os包  

os包包括各种各样的函数,以实现操作系统的许多功能。这个包非常庞杂。os包的一些命令就是用于文件管理。我们这里列出最常用的:

mkdir(path)

创建新目录,path为一个字符串,表示新目录的路径。相当于$mkdir命令

rmdir(path)

删除空的目录,path为一个字符串,表示想要删除的目录的路径。相当于$rmdir命令

listdir(path)

返回目录中所有文件。相当于$ls命令。

remove(path)

删除path指向的文件。

rename(src, dst)

重命名文件,src和dst为两个路径,分别表示重命名之前和之后的路径。  

chmod(path, mode)

改变path指向的文件的权限。相当于$chmod命令。

chown(path, uid, gid)

改变path所指向文件的拥有者和拥有组。相当于$chown命令。

stat(path)

查看path所指向文件的附加信息,相当于$ls -l命令。

symlink(src, dst)

为文件dst创建软链接,src为软链接文件的路径。相当于$ln -s命令。

getcwd()

查询当前工作路径 (cwd, current working directory),相当于$pwd命令。

比如说我们要新建目录new:

import os
os.mkdir('/home/bill/new')

shutil包

copy(src, dst)

复制文件,从src到dst。相当于$cp命令。

move(src, dst)

移动文件,从src到dst。相当于$mv命令。

比如我们想复制文件a.txt:

import shutil
shutil.copy('a.txt', 'b.txt')

Python标准库分享之文件管理 (部分os包,shutil包)_Python

标签:文件,src,Python,dst,命令,path,shutil,os
From: https://blog.51cto.com/u_15974582/7739908

相关文章

  • difference between a Client-Server and Sender-Receiver interface in Autosar
    thedifferencebetweenaClient-ServerandSender-ReceiverinterfaceinAutosarInaClient-Serverinterface,theclientrequestsaservicefromtheserverandtheserverrespondswitharesult.InaSender-Receiverinterface,thesendersendsdatatoone......
  • 【接口自动化】安装环境-python
    1.下载Python访问Python官网: www.python.org/点击downloads按钮,在下拉框中选择系统类型(windows/MacOS/Linux等)选择下载最新版本的Python没有版本要求的话,尽量使用最新版本前几个版本。避免新版本的不稳定 2. 安装Python双击下载好的Python安装包勾选左下角Add......
  • TDengine OSS 与 qStudio 实现无缝协同,革新数据分析和管理方式
    在数字化转型如火如荼的当下,海量爆发的时序数据处理成为转型成功的关键因素之一。为了帮助社区用户更好地进行数据分析和管理,丰富可视化解决方案的多样性,我们将开源的时序数据库(TimeSeriesDatabase)TDengineOSS与开源的数据库分析工具进行了集成,相信这对终极开源工具一定能帮助......
  • Centos安装磐维单机版
    一、系统环境优化安装依赖yum-yinstalllibaio-develflexbisonncurses-develglibc-develpatchredhat-lsb-corereadline-develpython3expectbzip2libnslncurses-devel注意事项:libnsl包在BCLinux8.2、openEulerx86系统中需要安装。Centos7环境和BC-Linux7.6......
  • python的装饰器
    python的装饰器1、装饰器的定义给已有的函数添加额外功能的函数,它本质上就是一个闭包函数。装饰器的功能特点:不修改已有函数的功能特点不修改已有函数的调用方式给已有函数添加额外的功能需求:给comment函数添加一个额外功能(需要先登陆,再评论)要求:不能改变现有comment函数......
  • python日志logger
    写代码过程中,为了方便问题定位,经常需要打印信息,但是太多的print()不好,所以可以用到loggerLogger通常分为两类:一类是StreamHandler,将日志信息输出到控制台;另一类是FileHandler,将日志信息输出到文件。Python标准库中的logging模块提供了强大的Logger功能。importloggingcla......
  • openstack自定义ubuntu、centos镜像
     #镜像制作官网参考文档https://docs.openstack.org/image-guide/#这里仅演示centos镜像制作,ubuntu配置一样。也可以参考官方文档制作。#cloud-init:#cloud-init是linux的一个工具,需要在制作镜像时安装。当系统启动时,cloud-init可从novametadata服务或......
  • 【常用操作】CentOS系统配置远程桌面
    一、前言当前系统使用最小化安装方式,因使用需求变更,需要使用图形化界面操作,此处介绍如何安装图形化界面,并配置远程桌面二、安装部署1、安装图形化界面安装Gnome包yumgroupinstall"GNOMEDesktop""GraphicalAdministrationTools"-y更新系统运行级别ln-sf/lib/sy......
  • Go - Composing Structs from Other Structs
    Problem: Youwantastructthathasdataandmethodsofanotherstruct. Solution: Embedanunnamedstructwithinanotherstruct.Theouterstructwillgainthedataandmethodsoftheinnerstruct. Inheritanceisnottheonlymechanismyoucanusefor......
  • 【访问控制】hosts.allow/deny配置说明
    一、前言一个IP请求连入,linux的检查策略是先看/etc/hosts.allow中是否允许,如果允许直接放行;如果没有,则再看/etc/hosts.deny中是否禁止,如果禁止那么就禁止连入。两个配置文件的关系为:/etc/hosts.allow的设定优先于/etc/hosts.deny二、支持服务hosts.allow和hosts.deny规则的......