执行os命令python后获取打印值

时间:2015-03-20 12:11:00

标签: android python gradle operating-system

我在python中运行以下函数,提示用户输入密码,并以密码作为参数运行os.system命令:

    password = raw_input("Please enter keystore password\n")
    gradle_command = "./gradlew assemble" + flavor_name + "release  -Pprop=\"['" + password + "']\""
    try:
        os.chdir("../")
        os.system(gradle_command)
    except OSError:
        sys.exit("Error building apk,")

问题是除了永远不会被调用。如果用户键入了错误的密码,则执行gradle命令并打印BUILD FAILED。

我想知道的是我如何注册构建未能相应地退出脚本。有没有办法可以获取BUILD_FAILED打印值?

提前致谢。

1 个答案:

答案 0 :(得分:1)

想出来。失败的gradle执行将返回非零数字,因此我可以执行以下操作:

 password = raw_input("Please enter keystore password\n")
 gradle_command = "./gradlew assemble" + flavor_name + "release  -Pprop=\"['" + password + "']\""
 if os.system(gradle_command) is not 0:
    sys.exit("Error building apk")