In Bash (o altre shell) come posso stampare una variabile di ambiente che ha un valore su più righe?Stampa una variabile con valore multi-linea nella shell?
text='line1
line2'
so un semplice solita echo $text
non funziona out of the box. Sarebbe utile qualche modifica di $ IFS?
La mia soluzione attuale è qualcosa come ruby -e 'print ENV["text"]'
. Questo può essere fatto in puro guscio? Mi chiedevo se il comando env
avrebbe preso un nome var non risolto ma non sembra.
Perché piegarsi all'indietro con i backtick? Basta fare 'text = 'line1 line2'' (quindi il compito si estende su due righe letterali di testo), o' text = $' line1 \ nline2'' se sei soddisfatto della portabilità limitata. –
con bash, il modo per ottenere quel testo in una variabile è 'text = $ 'line1 \ nline2'' –
@WilliamPursell Sapevo che era più semplice di quello che ho provato prima con heredoc ma che non funzionava ... ma naturalmente semplice stringa multilinea è più semplice.è solo molto tardi per rinfrescare i miei ricordi di bash. Grazie. – inger