bash shell 脚本错误

aza*_*din 2 command-line scripts

我以为是没有语法echo关键字即我们可以使用"'或没有引号。

我在 bash shell 中尝试了所有三种类型

我得到了错误。为什么会发生?

{#Azar's first shell script
echo "Hi Azar, Welcome to the new world of technology for you"
echo 'default script bash'
echo keep going don't stop always}
Run Code Online (Sandbox Code Playgroud)

错误:

 sh afs.sh
 Hi Azar, Welcome to the new world of technology for you
 default script bash
 afs.sh: 6: afs.sh: Syntax error: Unterminated quoted string
Run Code Online (Sandbox Code Playgroud)

jii*_*ezz 10

当您尝试执行脚本时,您的脚本失败

echo keep going don't stop always
Run Code Online (Sandbox Code Playgroud)

原因在语法错误中说明

Unterminated quoted string
Run Code Online (Sandbox Code Playgroud)

因为您使用'in don't,Bash shell 一直在寻找另一个'来结束您的句子。由于从未找到,因此会打印语法错误。

在这种情况下,您需要像这样使用双引号 (" ")

echo "keep going don't stop always"
Run Code Online (Sandbox Code Playgroud)

建议在打印一般内容时使用引号。如果需要,您可以使用双引号'和单引号"


Sam*_*uel 7

除了jiipeezz为这个问题提供的答案,您还可以使用反斜杠来转义单个字符。

echo keep going don\'t stop always

有关更多详细信息,请阅读此内容