Diciamo che c'è una variabile bashcome eseguire due comandi memorizzati in una variabile bash
run1 = "data"
ho bisogno di eseguire date
da
$ {run1}
E funziona, dal momento che pri ora attuale. Ma se metto due comandi nella variabile,
run2 = "data; echo foo"
Non posso eseguire i comandi memorizzati nella variabile run2
, poiché ${run2}
lamenta
data ;: comando non trovato
funziona ... forse sono curioso, ma puoi spiegare perché funziona per '' run1'' ma non per '' run2'' ... – Richard
Perché è quotato, il punto e virgola fa parte di la prima parola dopo la rimozione delle virgolette, non un elemento sintattico per separare due comandi. – chepner