Fino ad ora ho pensato che un punto e virgola nella shell avesse (in qualche modo) lo stesso significato di un'interruzione di riga. Quindi ne sono rimasto sorpreso
alias <name>=<replacement text>; <name>
<name>
è sconosciuto mentre è noto nella riga successiva. csh
, tcsh
, sh
, ksh
E bash
si comportano allo stesso. Almeno per csh
questo non importa se l'alias viene utilizzato direttamente o se uno script viene fornito prima del punto e virgola - gli alias non sono noti dopo ;
ma sono noti nella riga di comando successiva. È un bug o è previsto questo comportamento?