Shell中Read用法简介
一. read读取单个词. $read name $tony ma $echo $name tony ma $read id passwd $allen passwd $echo $id $allen $echo $passwd $passwd $read id passwd $allen kaka gogo $echo $id $allen $echo $passwd $kaka gogo 二. read读取整行. 利用while循环来使read读取整行。 以下是代码清单: 1 #!/bin/bash 2 lineno=1 3 cat $* | 4 while read -r line 5 do 6 echo "$lineno: $line" 7 lineno=$((lineno + 1)) 8 done 三. read的嵌套. 1)while外层的read依次读取的是文件pbook中的每一行,而内层的read是从console读取的内容。 2)要实现while read的嵌套,可以使用exec命令,将I/O重定向。 注意exec的用法,以及括号的使用。 1 #!/bin/bash 2 echo -n "Enter name to be removed: " 3 read name 4 p=$(grep "$name " phonebook | wc -l) 5 echo $p 6 if [ "$p" -gt 1 ] 7 then 8 echo "More than one match ; Please select the one to remove;" 9 grep "$name " phonebook > pbook 10 cat pbook | while read line 11 do( 12 echo -n "$line Remove(y/n)?" 13 exec < /dev/tty 14 read answer 15 if [ "$answer" = y ] 16 then 17 grep -v "^$line$" phonebook > /p 18 mv /p phonebook 19 else 20 continue 21 fi 22 ) 23 done 24 else 25 grep -v "^$line$" phonebook > /p 26 mv /p phonebook 27 fi 28 cat phonebookshell最简单脚本 |
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论