Bash Manual dice:
Quando viene utilizzato il [modulo, l'ultimo argomento del comando deve essere a].
$ type [
[ is a shell builtin
$ type ]
bash: type: ]: not found
Quindi ]non è una parola riservata, né è un operatore, né è un comando incorporato.
Come token, qual è l'identificatore token di ]? WORD o NAME?
[è (anche) un comando autonomo, di solito ha una man-page ... Quindi prova man [e / o man test( [e testpotrebbe essere lo stesso comando).
]virgolette singole o doppie e vedrai che non fa alcuna differenza; è solo una stringa.
[è (anche) un comando autosufficiente: -rwxr-xr-x 1 radice radice 39552 3 dicembre 18:14 / usr / bin / [Anche se è possibile che ci sia anche un "parallelo" incorporato, come c'è per per esempiokill. Su alcuni sistemi, iltestcomando è un collegamento simbolico[o viceversa. AFAIK,]non significa nulla da solo, ma è accettato per "chiudere" un[- ma è più per ragioni "estetiche".