パイプで流し込んだscript中にselect文があると壊れ
こんなコードがあったとする
code:script.sh
select i in Red Green Blue
do
case $i in
Red) echo "Red!!"; break ;;
Green) echo "Green!!"; break ;;
Blue) echo "Blue!!"; break ;;
*) echo "Bad select!!" ;;
esac
done
echo "You have .bashrc"
fi
このとき、上は成功するが下は失敗する
/icons/pass.iconcurl https://scrapbox.io/api/code/takker/%E3%83%91%E3%82%A4%E3%83%97%E3%81%A7%E6%B5%81%E3%81%97%E8%BE%BC%E3%82%93%E3%81%A0script%E4%B8%AD%E3%81%ABselect%E6%96%87%E3%81%8C%E3%81%82%E3%82%8B%E3%81%A8%E5%A3%8A%E3%82%8C/script.sh > test.sh && bash test.sh
/icons/fail.iconcurl https://scrapbox.io/api/code/takker/%E3%83%91%E3%82%A4%E3%83%97%E3%81%A7%E6%B5%81%E3%81%97%E8%BE%BC%E3%82%93%E3%81%A0script%E4%B8%AD%E3%81%ABselect%E6%96%87%E3%81%8C%E3%81%82%E3%82%8B%E3%81%A8%E5%A3%8A%E3%82%8C/script.sh | bash
次のような出力がなされる
code:log
1) Red
2) Green
3) Blue
2) Green
3) Blue