一、Python os模块(Linux环境)
1.1 执行shell命令
-
os.system('cmd') 执行命令不保存结果
-
os.popen('command') 执行后返回结果,使用.read()方法读出
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']
二、重要的各种分割符号
os.sep 输出操作系统的分隔符
Linux: '/'
Windows: r'' 前缀r或者\为转义符os.linesep 输出当前平台的行终止符,及文件路径的分割符
Linux: '\n' 行终止
Linux: ':' 路径分割
Windows: '\r\n' 行终止
Windows: ';' 路径分割
os.path