jimmy_page_89 ha scritto:Prova a dare
non dovrebbe più dare problemi, evitando istruzioni inutili
E comunque vicino a
non manca un punto e virgola?
EDIT: ti hanno già risposto
Se c'è il newline non dovrebbe essere necessario...
414N ha scritto:È normale.
In BASH, il valore di ritorno delle funzione è l'exit status dell'ultimo comando lanciato al loro interno.
Aggiungendo "echo 3" forzi la funzioni a non fallire (in man bash è scritto che la echo builtin resistuisce sempre 0).
È possibile forzare fallimenti oppure avanzamenti nel codice tramite i comandi true e false. Per esempio:
ti consente di evitare il fallimento di tutto lo script se hai usato set -e.
Il fatto è tutti i comandi finiscono bene, e la funzione viene portata a termine, poi lo script esce.
Nel caso particolare in cui l'ho provato eseguiva l'elif, con $CUE vuota, quindi l'ultimo comando eseguito era flac, che terminava bene. Forse è quel test che disturbava il set -e? O forse l'else?
Ora continuando lo script ho dovuto aggiungere un comando prima del fi e dunque il problema non si presenta più, comunque la faccenda per me non è per niente chiara.
Non ho tempo altrimenti indagherei meglio.
Intanto grazie mille a tutti e due!