一, 概念
read命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量.
不仅仅从键盘读取输入,也可以用于读取文件.
二, 选项
read可以带有-a, -d, -e, -n, -p, -r, -t, 和 -s八个选项。
1), -a: 将内容读入到数值中
echo -n "Input muliple values into an array:"
2), -d :表示delimiter,即定界符,一般情况下是以IFS为参数的间隔.
e.g. echo -d ";" var 用定界符";" 结束输入行
3), -e :只用于互相交互的脚本,它将readline用于收集输入行。
4), -n :限定最多可以读入多少有效字符数。
e.g echo –n 4 abcdefg. result: abcd
5), -p :提示符.
echo -p "please enter your name: "
6), -r :允许输入包括反斜杠'\'
7), -t : 允许输入的等待时间,单位为秒,等待时间超过,将继续执行后面的脚本.
e.g. echo -t 5 -p "please enter your name:"
8), -s: 关闭回显, 也就是说控制台输入不显示.比如输入密码
e.g. echo -p "enter password: " -s password
三, 读取文件实例
# 指定分隔符为","
IFS=","
while read col1 col2 col3 col4
do
echo col1=$col1 col2=$col2 col3=$col3 col4=$col4
done < $PHOTOLIST