一、Python os模块(Linux环境)
1.1 执行shell命令

- os.system('cmd') 执行命令不保存结果
![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180805231116905-284539462.png)
- os.popen('command') 执行后返回结果,使用.read()方法读出
![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180806003007705-1147413460.png)

1.2 对文件和目录的创建删除等

1.2.1 目录
- os.getcwd()获得当前目录
- os.curdir 当前目录
- os.pardir 父目录

>>> import os
>>> os.getcwd()
'/home/shiqi'
>>> os.curdir
'.'
>>> os.pardir
'..'

1.2.2 创建和删除目录

  • os.mkdir('a_dir') 创建单级目录
  • os.rmdir('a_dir') 删除单级目录
>>> os.mkdir('a_dir')
>>> os.system('ls')
a_dir vmwaretools
README.md rpc_none.py shiqi_ssh.txt
0
>>> os.rmdir('a_dir')
>>> os.system('ls')
README.md rpc_none.py shiqi_ssh.txt
vmwaretools
0
  • os.makedirs('/home/shiqi/b_par_dir/bb_child_dir/bbb_dir')

    递归的创建多级目录,等于linux下mkdir -p
  • os.removedirs('./b_par_dir/bb_child_dir/bbb_dir')

    递归的删除空目录,有文件就不删,linux下rm -r
root@zengyue:/home/shiqi# ls
README.md rpc_none.py shiqi_ssh.txt
rpc_homework_server.py shiqigo.py vmwaretools >>> import os
>>> os.makedirs('/home/shiqi/b_par_dir/bb_child_dir/bbb_dir') root@zengyue:/home/shiqi# ls
b_par_dir vmwaretools
README.md rpc_none.py shiqi_ssh.txt
root@zengyue:/home/shiqi# cd ./b_par_dir/bb_child_dir/bbb_dir/
root@zengyue:/home/shiqi/b_par_dir/bb_child_dir/bbb_dir# pwd
/home/shiqi/b_par_dir/bb_child_dir/bbb_dir >>> os.removedirs('/home/shiqi/b_par_dir/bb_child_dir/bbb_dir')
>>> os.system('ls')
README.md rpc_none.py shiqi_ssh.txt
vmwaretools
  • os.listdir('.') 返回指定目录下的文件(目录)列表
  • os.remove() 删除指定文件
>>> os.listdir('.')
['rpc_none.py', 'vmwaretools', 'README.md', 'shiqi_ssh.txt', '.rpc_server.py']
二、重要的各种分割符号

1. os.sep 输出操作系统的分隔符
Linux: '/'
![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180806001657552-53715858.png)
Windows: r'\' 前缀r或者\\为转义符
![](https://images2018.cnblogs.com/blog/1226829/201808/1226829-20180806001809946-937226643.png)

  1. os.linesep 输出当前平台的行终止符,及文件路径的分割符

    Linux: '\n' 行终止

    Linux: ':' 路径分割



    Windows: '\r\n' 行终止

    Windows: ';' 路径分割

os.path

os.path 下的方法点击这儿

python os模块详解的更多相关文章

  1. python os 模块详解

    os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.getcwd:得 ...

  2. python之OS模块详解

    python之OS模块详解 ^_^,步入第二个模块世界----->OS 常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows ...

  3. python time模块详解

    python time模块详解 转自:http://blog.csdn.net/kiki113/article/details/4033017 python 的内嵌time模板翻译及说明  一.简介 ...

  4. python docopt模块详解

    python docopt模块详解 docopt 本质上是在 Python 中引入了一种针对命令行参数的形式语言,在代码的最开头使用 """ ""&q ...

  5. (转)python collections模块详解

    python collections模块详解 原文:http://www.cnblogs.com/dahu-daqing/p/7040490.html 1.模块简介 collections包含了一些特 ...

  6. python pathlib模块详解

    python pathlib模块详解    

  7. Python Fabric模块详解

    Python Fabric模块详解 什么是Fabric? 简单介绍一下: ​ Fabric是一个Python的库和命令行工具,用来提高基于SSH的应用部署和系统管理效率. 再具体点介绍一下,Fabri ...

  8. python time 模块详解

    Python中time模块详解 发表于2011年5月5日 12:58 a.m.    位于分类我爱Python 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括: ...

  9. python模块-OS模块详解

    1.按字母分 os相关的函数:143个.按字母排序如下: ['abort', 'access', 'altsep', 'chdir', 'chmod', 'chown', 'chroot', 'clo ...

随机推荐

  1. Linux CFS调度器之pick_next_task_fair选择下一个被调度的进程--Linux进程的管理与调度(二十八)

    1. CFS如何选择最合适的进程 每个调度器类sched_class都必须提供一个pick_next_task函数用以在就绪队列中选择一个最优的进程来等待调度, 而我们的CFS调度器类中, 选择下一个 ...

  2. c/c++ 图的最短路径 Dijkstra(迪杰斯特拉)算法

    c/c++ 图的最短路径 Dijkstra(迪杰斯特拉)算法 图的最短路径的概念: 一位旅客要从城市A到城市B,他希望选择一条途中中转次数最少的路线.假设途中每一站都需要换车,则这个问题反映到图上就是 ...

  3. Java抽象类(Abstract Class)与接口(Interface)区别

    抽象类与接口比较 抽象类跟接口类似,都不能实例化,可能包含不需实现方法或已实现的方法. 抽象类可以定义一些不是静态或常量的字段,定义 public, protected, private访问级别的具体 ...

  4. 强大的Notepad++,竟然还是自由使用的

    这么好用的工具,竟然还是可以自由使用的的,当然就不用去找某些软件的破解版了. 除了本身很好用,还有插件功能,插件许多也是自由使用的,利用插件就可以实现程序员需要的一个手工编辑器了.

  5. Teradata 批量查找PI字段

    select * from dbc.indicesv where indextype in ('P','Q');

  6. 【Linux基础】crontab定时命令详解

    周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为“crontab”,是 ...

  7. java中的闭包

    闭包(Closure)是一种能被调用的对象,它保存了创建它的作用域的信息 public class Programmer { private String name; public Programme ...

  8. 有时间研究一下Maven打包插件细节

    Maven工作分为多个阶段,具体阶段参考:https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html ...

  9. (4)HomeAssistant 语言控制

    中文教程:https://www.hachina.io/docs/2073.html 英文网教程:https://www.home-assistant.io/components/conversati ...

  10. 吴恩达课后作业学习2-week2-优化算法

    参考:https://blog.csdn.net/u013733326/article/details/79907419 希望大家直接到上面的网址去查看代码,下面是本人的笔记 我们需要做以下几件事:  ...