use este em vez disso:
read -p "Are you sure: " sure </dev/tty
Aspas devem ser ascii 0x22, não UNICODE U-201c “
e U-201d ”
.
Eu tenho problema com uma leitura simples. Eu leio uma lista de itens xml e depois trabalho com eles. Em algum momento eu preciso perguntar se tenho certeza e aceito essa resposta em uma variável. Meu problema é que, se eu perguntar no "while read linea", o "read -p ..." é ignorado e não posso responder à pergunta.
xml2 < list | egrep "item" | egrep "url|pubDate|title" | while read linea;
do
case 1 in
$(($x<= 1)))
...
;;
$(($x<= 2)))
...
;;
$(($x<= 3)))
....
if [ $DIFERENCIA -lt $num_dias ];
then
...
read -p “Are you sure: ” sure
...
fi
...
;;
*)
let x=1
;;
esac
done
Obrigado
(para o bash) Fornece toda a linha de comando como entrada em algum outro descritor de arquivo 3
:
while read -ru 3 linea; do
read -p "Are you sure: " sure
echo "sure=$sure linea=$linea"
done 3< <(xml2 < list | egrep "item" | egrep "url|pubDate|title" )
E, por favor, use o ascii correto para aspas duplas: "
, não U-201c “
e U-201d ”
.