解决 Bash 中意外标记附近的语法错误
-
修复语法和格式化字符串以解决
bash: syntax error near unexpected token
错误 -
使用
dos2unix
命令解决bash: syntax error near unexpected token
Bash 中的错误
使用 Bash 脚本、转义序列或引号编写代码可能会导致错误。本文将解释如何解决 Linux Bash 中的 bash: syntax error near unexpected token
错误。
在 Bash 脚本中出现 syntax error near unexpected token
有许多与代码相关的原因。我们将解释最常见的错误以及解决方法。
修复语法和格式化字符串以解决 bash: syntax error near unexpected token
错误
如果你收到此错误,则很可能是语法错误。首先,使用 cat
命令读取文件的内容。
cat file.sh
注意单引号和双引号字符的使用。
如果你使用转义字符,则必须使用双引号。单引号不允许这些字符。
例如,以下代码将在意外标记附近抛出 syntax error near unexpected token '('
错误。
#!/bin/bash
str='You \'(cannot)\' do this'
但是,如果你使用双引号编写相同的代码,则可以使用转义字符。下面的代码将正常工作。
#!/bin/bash
str="You \"(can)\" do this"
此外,另一种方法是在字符串的开头添加 $
。这样,$'string'
形式的字符串会被特殊处理。
反斜杠转义序列按照 ANSI C 标准的规定进行解码。
#!/bin/bash
str=$'You \'(can)\' do this'
使用 dos2unix
命令解决 bash: syntax error near unexpected token
Bash 中的错误
Unix 操作系统使用换行符 ("\n"
) 作为行尾,但 Windows 操作系统使用回车和换行符 ("\r\n"
)。因此,如果你想使用 Cygwin 执行在 Windows 中编写的代码,你可能会收到此错误。
你必须清除回车符才能执行文件。
dos2unix
命令行工具是一个 DOS 到 Unix 文本文件格式转换器,反之亦然。你可以使用此工具使你的文件与 Unix 兼容。
它的用法如下。
dos2unix file.sh
该文件将被转换为 Unix 格式。你现在可以执行该文件。
./file.sh
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn