解決 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<"
Author: 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