Bash_case控制结构与read命令的使用
2014-06-30 17:24
337 查看
Case控制结构
Case 变量引用(${var}) in
Value1|value2)
Cmd1
Cmd2
;;
Value3|value4)
Cmd3
Cmd4
;;
Esac
注:整个结构中最后一条命令可以不用加双分号。
注:case中的value不支持正则,支持globbing(通配)以及|(或者)这样的写法;还可以使用字符集例如[:punct:]
例:[Yy][Ee][Ss]|[Yy]) cmd;;
[Nn]|[Nn][Oo]) cmd;;
*) cmd;
Bash如何与用户交互:
read命令(读取用户/文件输入的值,将其复制给指定的变量为值)
格式:read [选项] 变量名(如果不指定变量名,会将用户输入的值赋值给变量REPLY)
注:如果用户指定一个变量名,会将所有用户输入的数据赋值给这个变量;;如果用户指定多个变量名,会以默认(或者指定的)输入分隔符IFS分割用户的输入依次(一个值对应一个变量名)赋值给用户指定的变量;如果分割的值多余用户指定的变量数,会将多余的值一并赋值给用户指定的最后一个变量;如果分割的值少于用户指定的变量,那么用户指定的最后几个变量为空值。
选项及含义
-p:打印提示字符
-t:超时时间,达到指定时间,以一个非0值的退出状态退出read命令,不会读取用户已经输入的变量值!!!
-s:使用户输入的字符不显示在屏幕上;等于stty–echo命令,但不需要stty echo恢复。
-n#:对输入的字符计数,当输入的字符数达到预设的字符数#时,他会自动退出并将输入的数据赋值给变量。
*从文件中读取变量:(1)cat file|while read line 或(2)while read line 。。。done<file
(3)或者将while read line放在脚本中,并用命令调用脚本:./1.sh <file
注:for循坏也可以这么做,另外循环的输出可以在done后面加管道或者>或者>>来处理。
Case 变量引用(${var}) in
Value1|value2)
Cmd1
Cmd2
;;
Value3|value4)
Cmd3
Cmd4
;;
Esac
注:整个结构中最后一条命令可以不用加双分号。
注:case中的value不支持正则,支持globbing(通配)以及|(或者)这样的写法;还可以使用字符集例如[:punct:]
例:[Yy][Ee][Ss]|[Yy]) cmd;;
[Nn]|[Nn][Oo]) cmd;;
*) cmd;
Bash如何与用户交互:
read命令(读取用户/文件输入的值,将其复制给指定的变量为值)
格式:read [选项] 变量名(如果不指定变量名,会将用户输入的值赋值给变量REPLY)
注:如果用户指定一个变量名,会将所有用户输入的数据赋值给这个变量;;如果用户指定多个变量名,会以默认(或者指定的)输入分隔符IFS分割用户的输入依次(一个值对应一个变量名)赋值给用户指定的变量;如果分割的值多余用户指定的变量数,会将多余的值一并赋值给用户指定的最后一个变量;如果分割的值少于用户指定的变量,那么用户指定的最后几个变量为空值。
选项及含义
-p:打印提示字符
-t:超时时间,达到指定时间,以一个非0值的退出状态退出read命令,不会读取用户已经输入的变量值!!!
-s:使用户输入的字符不显示在屏幕上;等于stty–echo命令,但不需要stty echo恢复。
-n#:对输入的字符计数,当输入的字符数达到预设的字符数#时,他会自动退出并将输入的数据赋值给变量。
*从文件中读取变量:(1)cat file|while read line 或(2)while read line 。。。done<file
(3)或者将while read line放在脚本中,并用命令调用脚本:./1.sh <file
注:for循坏也可以这么做,另外循环的输出可以在done后面加管道或者>或者>>来处理。
相关文章推荐
- 使用控制结构——条件分支语句——CASE语句
- shell编程之条件测试表达,命令间的逻辑关系式和控制结构的使用以及算术运算
- shell命令之read、case使用
- fw bash read 命令介绍
- shell程序设计-<控制结构>-case语句
- 如何通过使用 VisualC # .NET /VB.NET 向打印机发送数据/控制命令
- Svn版本控制工具服务器端命令及客户端简单使用
- 如何使用read命令读取文件的每一行
- Clearcase find 命令使用手册
- Linux Bash Shell学习(十一):流程控制——case
- JAVA工程结构 && CMD使用javac提示非有效命令怎么办
- linux 目录结构+常用命令+压缩命令+vim使用+及一些基础知识(非常好)
- Linux程式设计-11.Shell Script(bash)--(6)流程控制case
- 使用Bash编写Linux Shell脚本-7.复合命令
- 使用Bash编写Linux Shell脚本-8.调试和版本控制
- Linux 修改.bash_profile后 造成命令无法使用bash: command not found
- 查询中使用CASE结构
- SQL Server 2005使用基于行版本控制的隔离级别初探(2) -- READ_COMMITTED_SNAPSHOT
- 【初识Java】控制结构的使用
- Bash Shell-使用内置的set和shopt命令设置bash选项