os模块提供对操作系统进行调用的接口
1、获取当前的路径
>>> import os
>>> os.getcwd() //相当于Linux命令pwd
'/root'
2、切换目录
>>> os.chdir("/usr/local") //相当于Linux命令cd
>>> os.getcwd()
'/usr/local'
3、递归的创建目录
>>> os.makedirs("/a/b/c") //makedirs能达到递归创建目录的功能
>>> os.chdir("/a/b/c")
>>> os.getcwd()
'/a/b/c'
>>> os.mkdir("/a") //mkdir不能递归创建,只能在现有的基础上创建目录
4、删除目录
>>> os.removedirs("/a/b/c") //注意:如果目录为空,则删除;并递归到上一级目录,如果上一级目录还为空,也删除
>>> os.rmdir("/a/b/c") //rmdir则只会删除c目录
5、列出某个目录的内容
>>> os.listdir("/tmp") //括号中的参数支持使用"."或者"..",来表示当前目录和上级目录
['.ICE-unix', 'pulse-Fs462EvLc7Dh', 'keyring-uwyK0a', '.esd-0', '.X0-lock', 'pulse-jkPtSpm9pKFD', 'keyring-MWNb3a', 'orbit-gdm', 'virtual-root.28G7kT', '.X11-unix', 'keyring-vSKFBk', 'keyring-s0TXNr', 'virtual-root.T44xz0']
6、删除文件
>>> os.remove("/root/test.txt") //括号中的参数为文件路径
7、重命名文件或目录
>>> os.rename("/a","/c") //括号中参数为"旧的","新的"
8、获取文件或目录的信息
>>> os.stat("/root/test.py") //默认打印全部属性
os.stat_result(st_mode=33188, st_ino=1198015, st_dev=64768, st_nlink=1, st_uid=0, st_gid=0, st_size=261, st_atime=1521601271, st_mtime=1521601271, st_ctime=1521601271)
>>> os.stat("/root/test.py").st_size //也可以取其中的某个值
261
9、输出操作系统的路径分隔符,比如:windows为"\\",Linux为"/"
>>> os.sep
'/'
10、输出操作系统的换行分隔符,比如:windows为"\r\n",Linux为"\n"
>>> os.linesep
'\n'
11、查看系统的环境变量
>>> os.environ
内容过多,就不再复制
12、获取当前操作系统环境变量的分隔符,比如:windows为";",Linux为":"
>>> os.pathsep
':'
13、显示当前系统
>>> os.name
'posix'
14、执行操作系统的命令
>>> os.system("ls -l")
总用量 21840
-rw-------. 1 root root 1612 2月 7 17:21 anaconda-ks.cfg
-rw-r--r--. 1 root root 46478 2月 7 17:21 install.log
-rw-r--r--. 1 root root 10033 2月 7 17:19 install.log.syslog
-rw-r--r--. 1 root root 22256403 12月 23 2016 Python-3.6.0.tgz
15、把文件路径和文件做分割
>>> os.path.split("/a/b/c/a.txt") //把一个文件的整体路径做分割
('/a/b/c', 'a.txt')
16、获取目录名
>>> os.path.dirname("/a/b/c/a.txt")
'/a/b/c'
17、获取文件名
>>> os.path.basename("/a/b/c/a.txt")
'a.txt'
18、判断路径是否存在,可以判断目录和文件
>>> os.path.exists("/b")
False
>>> os.path.exists("/c")
True
>>> os.path.exists("/etc/passwd")
True
19、判断路径是否是绝对路径
>>> os.path.isabs("/etc/passwd")
True
>>> os.path.isabs("passwd")
False
20、判断参数是否为文件
>>> os.path.isfile("/etc/passwd")
True
>>> os.path.isfile("/etc")
False
21、拼接路径
>>> os.path.join("/root","passwd","passwd.txt")
'/root/passwd/passwd.txt'
22、获取文件或目录的存取时间,返回时间戳
>>> os.path.getatime("/etc/passwd")
1521600541.5160062
>>> os.path.getatime("/etc")
1521531717.0806012
23、获取文件或目录的修改时间
>>> os.path.getmtime("/etc")
1521600007.5530176
>>> os.path.getmtime("/etc/passwd")
1517995284.6799996
24、返回文件的绝对路径
os.path.abspath(__file__) //返回文件的绝对路径
print(os.path.dirname(os.path.abspath(__file__))) //返回文件的所在目录