将stdout输出保存到变量中

6

这可能是一个幼稚的问题,但我真的不确定该怎么做。我提交了一个Spark作业,然后得到了以下输出:

运行作业成功。提交ID:driver-20170824224209-0001

我想以编程方式查询此作业的状态。如何使用控制台中的输出将ID提取到变量中,使用Bash脚本。

任何帮助都会受到赞赏。


你的意思是当你运行一个程序时,它输出字符串 Run job... 并且你想把这个字符串中的 id 存入变量里吗? - lurker
1个回答

13

假设您的命令为cmd,您想将命令的输出存储在(例如)名为res的变量中,在bash中一种方法是在单引号中运行该命令。

res=`cmd`

或在$()中嵌入命令

res=$(cmd)

在Bash中捕获标准输出和标准错误输出


第一个格式中的字符实际上是反引号 ` 而不是单引号 '。 - Biggsy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接