為什麼 bash 用重音符號和撇號封裝語法錯誤?

為什麼 bash 用重音符號和撇號封裝語法錯誤?

當 bash 報告語法錯誤時,它會用重音符號和撇號封裝引發語法錯誤的文本,如下所示:`...'。知道為什麼嗎?

這是一個例子:

$ bash -c "echo error()"
bash: -c: line 0: syntax error near unexpected token `('
bash: -c: line 0: `echo error()'

這種情況並不常見;然而,我只是好奇,這不是一個真正的問題。

編輯:對於像這樣的晦澀消息來說,這會變得更奇怪:

-bash: unexpected EOF while looking for matching ``'

答案1

在某些字體中,這些引號將顯示為相對的捲曲單引號對。它是過去的當今的 Unicode 世界,但產生此類引用的程式碼和實踐源自於 Unicode 之前的時代,或者說在它廣泛使用之前。

相關內容