解决 Linux Bash 中 syntax error near unexpected token newline 错误

Yahya Irmak 2022年5月11日
解决 Linux Bash 中 syntax error near unexpected token newline 错误

使用 Bash 脚本编写代码时,特殊字符或缺少引号可能会导致错误。本文将解释如何解决 Linux Bash 中的 bash: syntax error near unexpected token newline

解决 Linux Bash 中的 bash: syntax error near unexpected token newline 错误

在 Bash 脚本中出现 syntax error near unexpected token newline 错误有很多与代码相关的原因。本文的其余部分解释了最常见的错误以及修复它们的方法。

如果你收到此错误,则很可能是语法错误。首先,使用 cat 命令读取文件的内容。

cat file.sh

注意特殊字符的使用。 < 字符用于输入重定向,> 字符用于输出重定向。

如果你使用这些尖括号,则必须在引号中使用它们。否则会出现错误。

例如,下面的代码将抛出 syntax error near unexpected token newline

#!/bin/bash
str=<you cannot do this>

但是,你可以使用带引号的尖括号。下面的代码将正常工作。

#!/bin/bash
str="<You can do this>"

使用双引号或单引号都没有关系。你也可以按以下方式进行。

#!/bin/bash
str='<You can also do this>'

同样,你不能在 Bash 命令行参数中使用尖括号。让我们看看下面的例子。

有一个将用户名和密码作为参数的登录程序。如果任何参数包含尖括号,你将收到 bash: syntax error near unexpected token newline 错误。

./login --username admin --password 1234<

将参数括在单引号或双引号中以避免错误。

./login --username admin --password "1234<"
作者: Yahya Irmak
Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

相关文章 - Bash Error