说明:python2环境操作。
判断文件或目录是否是绝对路径
import os
r=os.path.isabs('/python/os.py')
d=os.path.isabs('/python/')
print r
print d
执行
python os.py
True
True
os目录操作
cat os.py
#!/usr/bin/env python
import os
path1=os.path.dirname('/python/os/os.py')
path2=os.path.abspath(__file__)
print path1
print path2
path3=os.path.split(path2)
print path3
[root@localhost os]# python os.py
/python/os
/python/os/os.py
('/python/os', 'os.py')
os创建目录
[root@localhost os]# ll
总用量 4
-rw-r--r-- 1 root root 91 12月 24 15:04 os.py
drwxr-xr-x 2 root root 6 12月 24 15:04 tmp
[root@localhost os]# cat os.py
#!/usr/bin/env python
import os
mkdir=os.mkdir('tmp') #如果目录已经存在则不能创建
print files
[root@localhost os]# python os.py
Traceback (most recent call last):
File "os.py", line 4, in <module>
mkdir=os.mkdir('tmp')
OSError: [Errno 17] File exists: 'tmp'
改进代码
[root@localhost os]# ll
总用量 4
-rw-r--r-- 1 root root 112 12月 24 15:16 os.py
drwxr-xr-x 2 root root 6 12月 24 15:10 tmp
[root@localhost os]# cat os.py
#!/usr/bin/env python
import os
if not os.path.exists('tmp'):
mkdir=os.mkdir('tmp')
[root@localhost os]# python os.py
os删除目录(空)
如果目录非空删除会报错
[root@localhost os]# ll
总用量 4
-rw-r--r-- 1 root root 48 12月 24 15:19 os.py
drwxr-xr-x 2 root root 6 12月 24 15:10 tmp
[root@localhost os]# cat os.py
#!/usr/bin/env python
import os
os.rmdir('tmp')
#或者os.removedirs('tmp')
[root@localhost os]# python os.py
[root@localhost os]# ll
总用量 4
-rw-r--r-- 1 root root 48 12月 24 15:19 os.py
遍历目录下的文件或者目录
cat os.py
#!/usr/bin/env python
import os
files=os.listdir('/tmp')
print files
[root@localhost os]# python os.py
['.XIM-unix', '.ICE-unix', '.font-unix', '.Test-unix', '.X11-unix', 'systemd-private-3820f053a9424464a32f7670dc2964cf-chronyd.service-ioYT0h', 'vmware-root_6560-692096908', 'systemd-private-8f0e448060714748ad6b622d22880efe-chronyd.service-sMWaDW', 'vmware-root_9027-4121797083']