将 ASCII 值分配给 shell 中的变量

Assign ASCII values to variable in shell

我在 shell 脚本方面还是新手

我想将 * 分配给一个变量并打印它。现在写我只是打印它:

echo -e "2"

有没有办法将该值分配给变量?

使用反引号 `` 可以捕获命令的输出。许多 shell 具有更复杂的语法 $()。但是反引号是最便携的。

var=`echo -e "2"`

使用$(cmd)`cmd` 捕获命令的输出。 $(...) 形式是首选,因为它更容易嵌套。

var=$(echo -e "2")

shell 将解释 $'...' 中的转义序列。这是前面带美元符号的单引号。

var=$'2'

当然你也可以直接写星号。引用它以防止通配符扩展。

var='*'

打印时,make sure to quote the variable。每次使用变量时总是必须输入双引号很烦人,但这通常是正确的做法。

echo "$var"    # yes
echo $var      # no