怎么在python里面调用linux命令
发布时间:2026-05-09 10:06:28

一、使用os模块
In[1]:importos#导入os模块
In[2]:os.system('ls')
anaconda-ks.cfg
epel-release-7-5.noarch.rpm
ipython-4.1.2
ipython-4.1.2.tar.gz
pip-8.1.2
pip-8.1.2.tar.gz#md5=87083c0b96763b29f7aba3613.gz
Out[2]:0
In[3]:a=os.system('ls')##得到的是执行命令的返回值,并非执行结果
anaconda-ks.cfg
epel-release-7-5.noarch.rpm
ipython-4.1.2
ipython-4.1.2.tar.gz
pip-8.1.2
pip-8.1.2.tar.gz#md5=87083c0b96763b29f7aba3613.gz
In[4]:a#执行ls命令的返回值,成功,为0
Out[4]:0
In[5]:b=os.popen('ls').readlines()#将获得的结果直接赋值b列表
In[6]:b#将ls执行结果输出到内存中,然后将所有值读取到b列表中
Out[6]:
['anaconda-ks.cfg\n',
'epel-release-7-5.noarch.rpm\n',
'ipython-4.1.2\n',
'ipython-4.1.2.tar.gz\n',
'pip-8.1.2\n',
'pip-8.1.2.tar.gz#md5=87083c0b96763b29f7aba3613.gz\n']os模块中常见的方法(Linux命令)
os.remove():删除文件
os.rename():重命名文件
os.walk():生成目录树下的所有文件名
os.chdir():改变目录
os.mkdir/makedirs:创建目录/多层目录
os.rmdir/removedirs:删除目录/多层目录
os.listdir():列出指定目录的文件
os.getcwd():获取当前工作目录
os.chmod():改变目录权限
os.path.basename():删除目录路径,返回文件名称
os.path.dirname():删除文件名,返回目录路径
os.path.join():将分离的部分组合成路径名
os.path.getsize():返回文件大小
os.path.exists():是否存在
os.path.isabs():是绝对路径吗?
os.path.isdir():是否为目录
os.path.isfile():是否为文件
二、使用commands模块
注:Python2使用该模块,Python3不推荐使用
In[7]:importcommands#commands模块导入commands模块
In[8]:c=commands.getoutput('ls')#ls命令执行结果,字符串形式赋值C变量
In[9]:c
Out[9]:'anaconda-ks.cfg\nepel-release-7-5.noarch.rpm\nipython-4.1.2\nipython-4.1.2.tar.gz\npip-8.1.2\npip-8.1.2.tar.gz#md5=87083c0b96763b29f7aba3613.gz'
In[10]:d=c.split('\n')#对变量c,指定分隔符\n分隔,给d列表形式赋值
In[11]:d
Out[11]:
['anaconda-ks.cfg',
'epel-release-7-5.noarch.rpm',
'ipython-4.1.2',
'ipython-4.1.2.tar.gz',
'pip-8.1.2',
'pip-8.1.2.tar.gz#md5=87083c0b96763b29f7aba3613.gz']请关注Python视频教程栏目,了解更多Python知识。
