Это немного грязно, чтобы объяснить.
У меня есть скрипт, который я хочу развернуть так:
curl -Ls example.com/myscript.sh | bash
Проблема в том, что скрипт читает из стандартного ввода примерно так:
echo "You should edit /srv/pillar/tm.sls now. Comments are in the file."
echo Type "skip" to skip or anything else to edit.
read text
if [ "$text" != "skip" ]; then
sudo pico /srv/pillar/tm.sls
fi
Теперь, так как стандартный ввод очевидно, служащий источником самого скрипта, в настоящее время это не работает. Есть ли способ, которым я могу вернуть терминал?
(Текущее решение состоит в том, чтобы развернуть его следующим образом: curl -Ls example.com/myscript.sh > myscript.sh && bash myscript.sh
)
Использовать процесс замены
bash <(curl -Ls example.com/myscript.sh)
.