bashのreadとは変数に代入するための便利関数
調べて実際に打ち込んだ感じだと、read
は変数に代入するための機能豊富な関数といった感じ。主に次の3つの動作を把握しておけば、スクリプトを読む上では問題ないと思いました。
readで覚えておくこと
標準入力をデリミタによって各変数に代入
read foo bar <<< 'foo bar'
echo $bar $foo # bar foo
ユーザーからの入力を受け付ける
echo 'Do you start? (yes or no)'
read answer
case "$answer" in
yes)
: OK
;;
*)
echo 'interrupt'
exit 1
;;
esac
ヒアドキュメントを読み込む
cnt=0
while read line
do
cnt=`expr $cnt + 1`
echo "LINE $cnt : $line"
done << END
ABC
DEF
GHK
END
# LINE 1 : ABC
# LINE 2 : DEF
# LINE 3 : GHK