栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

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

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

sys.exit(myString)
并不意味着“返回此字符串”。如果您将字符串传递给
sys.exit
sys.exit
则会将该字符串视为错误消息,并将该字符串写入
stderr
。对于整个程序,最接近返回值的概念是其退出状态,该状态必须为整数。

如果要捕获写入stderr的输出,可以执行以下操作

python yourscript 2> return_file

您可以在bash脚本中执行类似的操作

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

但是,不能保证仅捕获传递给的值

sys.exit
。写入stderr的所有其他内容也将被捕获,其中可能包括记录输出或堆栈跟踪。

例:

test.py

print "something"exit('ohoh')

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

bash t.sh

编辑

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

import script1import script2if __name__ == '__main__':    filename = script1.run(sys.args)    script2.run(filename)


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/624180.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号