LINUX.ORG.RU

Трабла с перенаправлением ввода в SHELL-скриптах RPM-пакетов, при использовании порождённого интерпретатора!!!


0

0

Проблема в следующем:
В RPM-скриптах следующее работать правильно не бидет
echo "Enter passowd:"
read -s PASSWD
вторая строчка проигнорируется и пароль нельзя будет ввести
Исправляется это так
echo "Enter passowd:"
read -s PASSWD <&1
Это работает на 100% Видимо RPM перенаправляет стандартные потоки!?
ВНИМАНИЕ ВОПРОС!!!
Почему не работает следующее
PASSWD=`/bin/bash2 -c 'read TMP_PWD <&1; echo $TMP_PWD'`
Результат тот же что и в 1-м случае!!!
Не понимаю в чём дело!!!

потому что запускается новый процесс. У него поток 1 это то что ему сказали.

Наверно так надо:

PASSWD=$(/bin/sh -c 'read TMP_PWD; echo $TMP_PWD' <&1)

dilmah ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.