Shell编程之条件选择和条件判断
一、条件选择(if)与条件判断(case)的对比:
if语句:是选择执行,if语句可嵌套。
if条件选择使用格式 |
||
单分支 |
双分支 |
多分支 |
if 判断条件;then 条件为真的分支代码 fi |
if 判断条件; then 条件为真的分支代码 else 条件为假的分支代码 fi |
if CONDITION1; then if-true elifCONDITION2; then if-ture elifCONDITION3; then if-ture … else all-false fi |
case语句的使用格式 |
||
case支持glob风格的通配符: *: 任意长度任意字符 ?: 任意单个字符 []:指定范围内的任意单个字符 a|b: a或b |
||
case 变量引用in PAT1) 分支1 ;; PAT2) 分支2 ;; … *) 默认分支 ;; esac |
以上的对比,case相对更加的灵活和书写上简单,编写较复杂的脚步,case语句更胜于if语句。
二、完成下面的习题:
练习:
1、 写一个脚本/root/bin/createuser.sh,实现如下功能:使用一个用户名做为参数,如果指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等信息
脚本代码:
脚本执行结果:
2、写一个脚本/root/bin/yesorno.sh,提示用户输入yes或no,并判断用户输入的是yes还是no,或是其它信息
脚本代码:
脚本执行结果:
3、写一个脚本/root/bin/filetype.sh,判断用户输入文件路径,显示其文件类型(普通,目录,链接,其它文件类型)
脚本代码:
脚本执行结果:
4、写一个脚本/root/bin/checkint.sh,判断用户输入的参数是否为正整数
脚本代码:
脚本执行结果:
原创文章,作者:Aaron_wang,如若转载,请注明出处:http://www.178linux.com/34381