Perché bash incapsula l'errore di sintassi sia con accento grave che con apostrofo?


14

Quando bash riporta un errore di sintassi, racchiude il testo che ha sollevato l'errore di sintassi entrambi con accento grave e con un apostrofo, come questo: `...'. Qualche idea sul perché?

Ecco un esempio:

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

Questo non è molto comune; tuttavia, sono solo curioso, questo non è un vero problema.

Modifica: questo diventa più strano con messaggi oscuri come questo:

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


Risposte:


8

In alcuni tipi di carattere, queste virgolette appariranno come coppie opposte di virgolette singole arricciate. È passé nel mondo Unicode di oggi , ma il codice e le pratiche che hanno prodotto tale quotazione derivano da un tempo prima di Unicode o prima della sua diffusa disponibilità.


2
Più di uno potrebbe desiderare di conoscere l'argomento: cl.cam.ac.uk/~mgk25/ucs/quotes.html
mr.spuratic

1
+1 per l'utilizzo di "passe" in una risposta tecnica. Bravo, signore!
Bruce Ediger
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.