python中怎么运行shell脚本

Python011

python中怎么运行shell脚本,第1张

python中怎么运行shell脚本

system()

其中最后一个0是这个命令的返回值,为0表示命令执行成功。使用system无法将执行的结果保存起来。

popen()

获取命令执行的结果,但是没有命令的执行状态,这样可以将获取的结果保存起来放到pst中。

commands

可以很方便的取得命令的输出(包括标准和错误输出)和执行状态位。

commands.getoutput('ls')这个方法只返回执行结果result不返回状态。

在python中调用shell脚本

hello.sh

下面的512是返回的状态码,如果eixt 0时则返回的是0.

shell脚本使用python脚本的参数

写一个hello.sh脚本,需要传入两个参数:

执行结果如下:

在python脚本中调用shell脚本,并传入参数,注意参数前后要有空格

执行python脚本

相关推荐:《Python教程》以上就是小编分享的关于python中怎么运行shell脚本的详细内容希望对大家有所帮助,更多有关python教程请关注环球青藤其它相关文章!

(已尝试mac自带的文本编辑器,脚本编辑器无法编写.sh文件

运行后出现vim主界面,代表mac有vim,并且成功进入了vim

想要运行.py文件,直接使用绝对路径即可(此路径可以通过直接拖进终端即可获得,或者使用快捷键Option+Command+C 复制文件途径。)

格式: /可执行文件所在目录/可执行文件

到这里简单可以运行regression.py文件的shell脚本写好了。

解决办法:修改rt.sh文件权限,命令为:

解决办法:同问题一

查了资料问题是'(',')'要使用转义,才可以识别即'(',')'。所以在最开始打开regression.py文件把所有的括号都加了一遍,这种方法不会再出现括号的错误,但是这并不是一个合理的解决办法,这样太麻烦了,而且编写时是不会这样处理的,所以在看了另一个别人的脚本时,发现在.py脚本的头部,即第一行加了一句话

这时使用未做过括号处理的.py文件,也不会报错了!

可参考: https://blog.csdn.net/wh_19910525/article/details/8040494

regression.py在不使用rt.sh文件是可以成功运行的,但是此时出现no module错误。

开始以为是quandl自己安装的问题,在python2.7是Quandl,python3.6是quandl,所以在终端使用pip3,pip分别安装,但是运行时还会出现同样问题,但发现一个问题不管是在使用pip,还是pip3在终端运行时,均会说此包已存在,但存在路径均为python3.6下,所以尝试更改regression.py文件的头部第一行,更改为: #!/usr/bin/env python3

可以正常运行了!!!!

还是开心的晒一下,结果吧。(虽然和脚本无关了,哈哈哈哈哈)

对于使用shell脚本,传递参数,后续进行学习总结,今天就总结好编写shell脚本运行python文件吧!