其他分享
首页 > 其他分享> > bash脚本——将命令结果输出给变量,及需要注意的地方(“bad substitution”报错)

bash脚本——将命令结果输出给变量,及需要注意的地方(“bad substitution”报错)

作者:互联网

今天练习写脚本的时候,遇到一个问题——怎么将命令输出的结果赋值给变量。
查阅之后发现有两种方法:

NAME='command [option] argument'
!!!这个已经不可以使用了!!!

以及

NAME=$(command [option] argument)

需要注意的是:实际测试之后发现在Ubuntu 20.04.1 LTS上,第一个已经不可以使用了,如果使用echo来查看变量会发现输出是command [option] argument。我看有一种说法是Ubuntu的bash被软链接到dash上了。但是我查看$SHELL发现还是/bin/bash,查看/bin/bash文件信息发现不是软链接。所以可能是代码修改而不是单纯的软链接。
第二种方法还是能继续使用的。 但是第二种方法使用的时候,需要注意使用的是小括号,而不是赋值变量的时候用的大括号,不然会报错显示bad substitution。我修改了半天才发现是输错了,特别尴尬!!!

标签:option,使用,argument,bad,报错,substitution,command,bash,变量
来源: https://blog.csdn.net/qq_33919450/article/details/120933996