我在名为“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