(1) 用于从terminal读入数据
ngnlinux1 [** NONE **]/home/qius $ read -p "input:" input
input:shang hai is a good city
ngnlinux1 [** NONE **]/home/qius $ echo $input #如果只有一个参数,这个参数将保存所有的输入
shang hai is a good city
ngnlinux1 [** NONE **]/home/qius $ read -p "input:" input1 input2
input:shang hai is a good city
ngnlinux1 [** NONE **]/home/qius $ echo $input1 #如果有多个参数,第一个参数保存第一参数,第二个保存第二个,最后一个参数将保存剩下所有的输入
shang #如果输入没有参数个数多,则等待输入
ngnlinux1 [** NONE **]/home/qius $ echo $input2
hai is a good city
(2) 用于从文件读入
ngnlinux1 [** NONE **]/home/qius $ cat doc.txt
shang1 shang2
qiu1 qiu2
ngnlinux1 [** NONE **]/home/qius $ cat sh_test
#! /bin/bash
while read a
do
echo start
echo $a
echo end
done < <(echo Hii) #从命令输出读入
#done < ./doc.txt #从文件读入 两种读入方式都可以
ngnlinux1 [** NONE **]/home/qius $
ngnlinux1 [** NONE **]/home/qius $ ./sh_test
start
Hii
end
ngnlinux1 [** NONE **]/home/qius $ cat sh_test
#! /bin/bash
while read a
do
echo start
echo $a
echo end
#done < <(echo Hii)
done < ./doc.txt
ngnlinux1 [** NONE **]/home/qius $ ./sh_test
start
shang1 shang2
end
start
qiu1 qiu2
end
ngnlinux1 [** NONE **]/home/qius $
ngnlinux1 [** NONE **]/home/qius $ cat sh_test
#! /bin/bash
cat ./doc.txt | #cat的输出座位read的输入
while read a
do
echo start
echo $a
echo end
done
#done < <(echo Hii)
#done < ./doc.txt
ngnlinux1 [** NONE **]/home/qius $ ./sh_test
start
shang1 shang2
end
start
qiu1
ngnlinux1 [** NONE **]/home/qius $ cat sh_test
#! /bin/bash
cat ./doc.txt |
while read a b # 一次读入多个变量
do
echo start
echo "a=" $a, "b=" $b
echo end
done
#done < <(echo Hii)
#done < ./doc.txt
ngnlinux1 [** NONE **]/home/qius $ ./sh_test
start
a= shang1, b= shang2
end
start
a= qiu1, b= qiu2
end
ngnlinux1 [** NONE **]/home/qius $