Linux命令行与shell脚本(10)--获得用户输入

来源:互联网 发布:电脑软件开发培训班 编辑:程序博客网 时间:2024/06/10 14:56

获得用户输入

  • read命令:接受从标准输入(键盘)或另一个文件描述符的输入。
echo -n "Enter your name:";  #-n使得echo不换行read name;echo "Welcome $name";read -p "Enter your age:" age #-p直接在read命令行指定提示符days=$[ $age * 365 ];echo "The day is $days";if read -t 5 -p "Enter you last name:" name #-t指定read超时的秒数then        echo "Welcom $name";else        echo "Sorry,timeout";fiif read -n1 -p "Do you want continue[Y/N]" answer #-n指定达到输入的字符数后返回thencase $answer inY | y)     echo     echo "fine,continue....";;N | n)     echo    echo "goodbye";    exit;;esacfiecho "Done";
  • 你可以在read命令行中不指定变量。如果这么做,read命令会将它收到的任何数据都放进特殊环境变量REPLY中。
  • -s选项会阻止将传给read命令的数据显示在显示器上(实际上,数据会被显示,只是文本颜色与背景相同)
  • read可以从文件中读取内容
file="/Users/chenhong/Desktop/shell_workspace/read.sh";count=1;cat $file | while read linedo        echo "Line $count:$line";        count=$[ $count + 1 ];done
0 0