![为变量赋值时出现“STR:未找到命令”](https://linux22.com/image/884095/%E4%B8%BA%E5%8F%98%E9%87%8F%E8%B5%8B%E5%80%BC%E6%97%B6%E5%87%BA%E7%8E%B0%E2%80%9CSTR%EF%BC%9A%E6%9C%AA%E6%89%BE%E5%88%B0%E5%91%BD%E4%BB%A4%E2%80%9D.png)
我在名为“test.sh”的 shell 脚本中输入了以下几行:
#!/bin/bash
echo Hello World
STR=”Hello Again”
echo $STR
在将 chmod 设置为可执行文件后,我使用 运行了脚本./test.sh
。但是,我收到消息
./test.sh: line 3 STR: Command not found
我究竟做错了什么?
答案1
您使用什么来创建该脚本?您问题中的引号字符是错误的。它们不是常规双引号 ( "
) 而是”
。常规引号是:
$ uniprops '"' | head -1
U+0022 ‹"› \N{QUOTATION MARK}
而你的是:
$ uniprops '”' | head -1
U+201D ‹”› \N{RIGHT DOUBLE QUOTATION MARK}
因此,只要使用常规引号就可以了:
#!/bin/bash
echo Hello World
STR="Hello Again"
echo "$STR" ## Get into the habit of ALWAYS quoting your variables as well