Necesito ejecutar un script canalizando a través bash
de wget
(en lugar de ejecutarlo directamente con bash).
$ wget -O - http://example.com/my-script.sh | bash
No funciona porque mi script tiene read
declaraciones en él. Por alguna razón, estos no funcionan cuando se conecta a 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
$
En lugar de solicitar input:
y pedir un valor como debería, el comando de lectura simplemente se pasa por alto bash
.
¿Alguien sabe cómo puedo canalizar un script read
a bash
?