[英]How do I set a variable to the output of two commands in Bash
我阅读了如何将变量设置为 Bash 中命令的 output? 并尝试这样做两次:
TESTVAR=$(echo 1) $(echo 2)`
TESTVAR="$(echo 1)" "$(echo 2)"
TESTVAR=`echo 1` `echo 2`
所有三个选项都因-bash: 2: command not found
失败。
Bash 版本 4.3.30
问题是 bash 运行这两个命令,捕获它们的输出,然后将其替换为生成TESTVAR=1 2
。 这将 1 分配给 TESTVAR 并尝试运行 2。显然,我的 PATH 上没有名为“2”的可执行文件。
使用引号的第二次尝试接近了,但引号不属于单个替代项。 你需要一对:
TESTVAR="$(echo 1) $(echo 2)"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.