ENDOFMENU
, conforme usado no seu exemplo, é um chamado aqui documento ou aqui doc . Ele permite uma seqüência de várias linhas sem a necessidade de escapar citando caracteres como '
e "
.
Citando o manual bash(1)
:
Você mostrou o seguinte código no seu exemplo:
cat<<ENDOFMENU
1: print the date
2,3 : print the current working directory
4: exit
ENDOFMENU
echo; echo -e "your choice?\c"
Isso torna uma string disponível como fluxo e depois as imprime no console usando o comando cat
. Finalmente, ele imprime outra linha em branco seguida pela seqüência de caracteres your choice?
e uma sequência de escape que significa "não produz saída adicional" e remove efetivamente a nova linha que se segue. Pode ser reescrito como:
echo -e " 1: print the date
2,3 : print the current working directory
4: exit
your choice?\c"