温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

在python里面调用linux命令的方法

发布时间:2020-07-11 14:40:16 来源:亿速云 阅读:153 作者:清晨 栏目:编程语言

这篇文章将为大家详细讲解有关在python里面调用linux命令的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一、使用os模块

In [1]: import os   #导入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=87083c0b9867963b29f7aba3613e8f4a.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=87083c0b9867963b29f7aba3613e8f4a.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=87083c0b9867963b29f7aba3613e8f4a.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]: import 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=87083c0b9867963b29f7aba3613e8f4a.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=87083c0b9867963b29f7aba3613e8f4a.gz']

关于在python里面调用linux命令的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI