Я ввел следующие строки в сценарий оболочки, названный “test.sh”:
#!/bin/bash
echo Hello World
STR=”Hello Again”
echo $STR
После chmod к исполняемому файлу, я запустил скрипт с ./test.sh
. Однако я получаю сообщение
./test.sh: line 3 STR: Command not found
Что я делаю неправильно?
Что Вы используете для создания того сценария? Символы кавычки, которые Вы имеете в своем вопросе, являются неправильными. Они не регулярные двойные кавычки ("
), но ”
. Регулярные кавычки:
$ 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