解決 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