Ho bisogno di eseguire uno script eseguendo il piping bash
con wget
(anziché eseguirlo direttamente con bash).
$ wget -O - http://example.com/my-script.sh | bash
Non funziona perché la mia sceneggiatura contiene delle read
dichiarazioni. Per qualche motivo questi non funzionano quando si esegue il piping per bash:
# Piping to bash works in general
$ echo 'hi'
hi
$ echo "echo 'hi'" | bash
hi
# `read` works directly
$ read -p "input: " var
input: <prompt>
# But not when piping - returns immediately
$ echo 'read -p "input: " var' | bash
$
Invece di richiedere input:
e chiedere un valore come dovrebbe, il comando read viene semplicemente passato bash
.
Qualcuno sa come posso tubo di uno script con read
a bash
?