Это немного беспорядочно, чтобы объяснить.
У меня есть сценарий, который я хочу развернуть следующим образом:
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
Теперь, поскольку stdin, очевидно, служит источником самого скрипта, в настоящее время это не работает. Есть ли способ восстановить терминал?
(Текущее обходное решение состоит в том, чтобы развернуть его следующим образом: curl -Ls example.com/myscript.sh > myscript.sh && bash myscript.sh)