Предположим, у меня есть файл confirmation.sh
со следующим содержимым:
#!/bin/bash
echo -n "Are you sure [Y/n]? "
read line
case "$line" in
n|N) echo "smth"
;;
y|Y) echo "smth"
;;
esac
и я хочу запустить этот скрипт следующим образом:
cat confirmation.sh | sh
Я вижу, Are you sure [Y/n]?
и сценарий прерывается. В чем проблема?
/bin/bash
в строке bang, но вы используете.sh
расширение и пытаетесь передать скриптsh
. Не проблема, так как ваш код совместим с обоими, но стоит отметить.