在bash脚本中存储Python脚本的返回值

我想从一个bash脚本执行一个python脚本,我想把python脚本的输出存储在变量中。

在我的python脚本中,我打印一些东西到屏幕,最后我返回一个字符串:

sys.exit(myString)

在我的bash脚本中,我做了以下:

outputString=`python myPythonScript arg1 arg2 arg3 `

但是当我使用echo $ outputString检查outputString的值时,我得到了Python脚本打印到屏幕的所有内容,但不是返回值myString!

我该怎么办?

编辑:我需要字符串,因为它告诉我Python脚本创建的文件所在的位置。我想做一些像:

fileLocation=`python myPythonScript1 arg1 arg2 arg1`
python myPythonScript2 $fileLocation
http://docs.python.org/library/sys.html#sys.exit

如果使用字符串参数,sys.exit将会写入stderr。

做某事

python yourscript 2> return_file

Bash script – store stderr in variable

你可以在你的脚本中做这样的事情

output=$((your command here) 2> &1)

例:

test.py

print "something"
exit('ohoh')

t.sh

va=$(python test.py 2>&1)                                                                                                                    
mkdir $va

bash t.sh

编辑

不知道为什么,但在这种情况下,我会写一个主要脚本和另外两个脚本…混合python和bash是没有意义的,除非你真的需要。

import script1
import script2

if __name__ == '__main__':
    filename = script1.run(sys.args)
    script2.run(filename)

相关文章

普通模式 >G 增加当前行到文档末尾处的缩紧层级 $ 移动到本行的末尾 . 相当于一个...
原文连接: https://spacevim.org/cn/layers/lang/elixir/ 模块简介 功能特性 启用模块 快捷键 语言专属...
原文连接: https://spacevim.org/cn/layers/lang/dart/ 模块简介 功能特性 依赖安装及启用模块 启用模...
 =   赋值操作符,可以用于算术和字符串赋值 +        加法计算     -        减法运算...
1.根据包名来查看指定的APP指定数据 adb shell "top | grep com.xxx.xxx" 由于这样打印出来的数...
ctrl+F 向下翻页 ctrl+B 向下翻页 u 取消最近一次操作 U 取消当前行的操作 ZZ 保存当前内容并退出 gg 跳...