广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python内置模块OS 实现SHELL端文件处理器
  • 574
分享到

python内置模块OS 实现SHELL端文件处理器

2024-04-02 19:04:59 574人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录OS 模块带path判断文件判断文件夹判断文件是否存在获取文件大小获取路径及文件获取绝对路径返回文件名获取文件路径路径拼接不带path获取平台获取所有文件当前工作路径目录操作重命

OS 模块

  • 在讲解包模块时我们提到通过 sys 模块进行查看全局包路径查看于注册,今天我们尝试了解下OS模块,这个模块主要作用就是打通程序于系统之间的通信。
  • 通过 help('modules') 我们能够发现 OS 是作为python的内置模块出现的。

带path

判断文件

 import os
 print(os.path.isfile('demo.txt'))
  • 如果是文件则返回 True 否则返回 False 。

判断文件夹

 import os
 print(os.path.isdir('../os'))
  • 其中参数我们传递一个路径,如果是文件夹返回 True 否则返回 False

判断文件是否存在

  • 这个应该是我们经常在脚本中使用的操作,存在我们则使用不存在则需要创建文件填充默认内容。
 import os 
 print(os.path.exists('ttttt.txt'))
  • 同样如果存在则返回 True 否则返回 False 。

获取文件大小

  • 我们经常在服务器上通过 ls -al 查看文件信息,其中就包括文件大小这个属性,作为 Python 内置的模块肯定也少不了相关的属性获取功能。
 import os 
 print(os.path.getsize('demo.txt'))

获取路径及文件

  • 之前在操作 Java 时经常需要获取文件所在目录,当时都是通过Java对象属性获取的,而 Python 中自动帮我们处理了。

获取绝对路径

  • 不知道你有没有注意到上面我们获取脚本所在目录时通过 ../os 等方式,包括获取路径及文件章节中我们手动敲出来文件的完整路径,实际上通过python自带了。
 import os
 print(os.path.abspath('practice.py'))

返回文件名

 import os
 print(os.path.basename('practice.py'))

获取文件路径

  • 仅限我们传入了全路径的文件 dirname 才起作用,这个感觉有点鸡肋

路径拼接

  • 我们经常会出现路径地址的拼接。windowslinux 文件分隔符不一样,Java 中给我们提供了一个获取分隔符的变量,但是python 直接忽略掉分隔符了,直接给我们提供一个拼接的方法。
 import os 
 print(os.path.join('parent','child'))

不带path

获取平台

  • 有的时候我们需要根据不同平台来执行不同的操纵,这个时候就需要获取到平台信息了。
 import os
 print(os.name)

获取所有文件

  • 既然是模块肯定少不了我们常用的功能,之前提到过了我们经常在服务器上执行 ls -al .
 import os 
 print(os.listdir)

当前工作路径

  • 很多时候我们不回直接在脚本路径执行脚本,往往都是通过绝对路径或者相对路径来执行脚本,有的时候脚本会依赖执行路径上的某些文件,所以获取执行脚本路径至关重要。

目录操作

  • 关于文件目录新建删除相信也很重要吧。下面我们来看看如何操作。
 import os 
 os.mkdir('test')
 print(os.getcwd()+'工作下的文件列表'+os.listdir())
 os.rmdir('test')

重命名文件

 import os 
 os.rename(old,new)

文件属性

  • 我们能够看到打印了很多属性。
属性作用
st_mode权限模式
st_ino节点号
st_dev驻留的设备
st_nlink节点连接数
st_uid拥有者用户
st_gid所属组ID
st_size文件大小
st_atime上次访问时间
st_mtime最后一次修改时间
st_ctime操作系统报告的ctime

修改权限杀死进程

 os.chmod(file)
 os.get_terminal_size()
 os.kill(10884,signal.SIGKILL)

打通shell

  • 作为一个shell爱好者,我还是很喜欢使用shell 来实现的,尤其是在做系统初始化的时候这个时候没有python ,而shell 是linux 系统自带的,所以shell 脚本的时候还是很有必要的,我个人也是shell+python 相互辅佐的存在。我们知道shell 中直接 python xxx.py。 但是python 如何执行shell 呢?
 import os 
 name=os.system('ls -al') 
  • 上面我们提到获取平台信息 os.name ,我们可以根据这个命令来通过 os.system('cmd') 指定不同系统的cmd 命令。

到此这篇关于python内置模块OS 实现SHELL端文件处理器的文章就介绍到这了,更多相关python SHELL处理器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python内置模块OS 实现SHELL端文件处理器

本文链接: https://www.lsjlt.com/news/120606.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python内置模块OS 实现SHELL端文件处理器
    目录OS 模块带path判断文件判断文件夹判断文件是否存在获取文件大小获取路径及文件获取绝对路径返回文件名获取文件路径路径拼接不带path获取平台获取所有文件当前工作路径目录操作重命...
    99+
    2022-11-11
  • Python中怎么利用内置模块处理ini配置文件
    Python中怎么利用内置模块处理ini配置文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。注意:本文基于Python  3.9.0(CPython...
    99+
    2023-06-15
  • python内置模块之怎么实现上下文管理contextlib
    这篇文章主要介绍“python内置模块之怎么实现上下文管理contextlib”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python内置模块之怎么实现上下文管理contextlib”文章能帮助大...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作