![将标准输出保存到变量时出现问题](https://linux22.com/image/87619/%E5%B0%86%E6%A0%87%E5%87%86%E8%BE%93%E5%87%BA%E4%BF%9D%E5%AD%98%E5%88%B0%E5%8F%98%E9%87%8F%E6%97%B6%E5%87%BA%E7%8E%B0%E9%97%AE%E9%A2%98.png)
寻找一些答案,但没有找到任何突出的解决方案。
我正在尝试制作一个 bash 脚本,在其中我需要将输出保存git rev-parse --show-toplevel
到变量中。当我在终端中运行此命令时,它会输出一些内容。
首先,为什么myVar=git rev-parse --show-toplevel
在我的脚本中不起作用?我收到的错误是rev-parse: command not found
.
其次,我认为我需要做类似的事情myVar=${git rev-parse --show-toplevel}
,但这告诉我这是一个糟糕的替代。
任何人都可以为我澄清这些事情,或者链接到相关的内容吗?真的很感激。
答案1
您需要命令替换 ( $()
) 将命令的输出保存在变量中:
myVar="$(git rev-parse --show-toplevel)"
现在要获取变量的值myVar
,请使用"$myVar"
.