Shell脚本编程之入门基础(二)if、case的使用

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: ab

case 变量引用in

PAT1)

分支1

;;

PAT2)

分支2

;;

*)

默认分支

;;

esac

以上的对比,case相对更加的灵活和书写上简单,编写较复杂的脚步,case语句更胜于if语句。 

 

二、完成下面的习题:

练习:

1、  写一个脚本/root/bin/createuser.sh,实现如下功能:使用一个用户名做为参数,如果指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等信息

脚本代码:

blob.png

脚本执行结果:

blob.png

2、写一个脚本/root/bin/yesorno.sh,提示用户输入yesno,并判断用户输入的是yes还是no,或是其它信息

脚本代码:

blob.png

脚本执行结果:

 blob.png

3、写一个脚本/root/bin/filetype.sh,判断用户输入文件路径,显示其文件类型(普通,目录,链接,其它文件类型)

脚本代码:

blob.png

脚本执行结果:

 blob.png

4、写一个脚本/root/bin/checkint.sh,判断用户输入的参数是否为正整数

脚本代码:

blob.png 

脚本执行结果:

  blob.png 

原创文章,作者:Aaron_wang,如若转载,请注明出处:http://www.178linux.com/34381

(0)
Aaron_wangAaron_wang
上一篇 2016-08-15 09:25
下一篇 2016-08-15 09:25

相关推荐

  • 配置Nginx作为反向代理服务器

    配置Nginx作为反向代理服务器      一、nginx作为反向代理的工作模型: 1、nginx作为反向代理的工作模型       nginx工作在应用层,其能理解并可以提取出http请求报文中的首部信息中的请求方法、url、http协议版本等信息。   &…

    Linux干货 2016-10-29
  • vim编辑器的使用

    vim          vim是一个类似于vi的文本编辑器,不过在vi的基础上增加了很多功能,在早起vim和Emacs编辑器打的很火热,在1999年被linuxwork文本编辑分类的优胜者,而vim屈居第二,但2000年vim赢得了salashdot beanie的最佳开放源代…

    系统运维 2016-08-09
  • awk

    awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk有很多内建的功能,比如数组、函数等,这是它和C语言的相同之处,灵活性是awk最大的优势。

    Linux干货 2018-01-02
  • week5:grep命令和find命令的应用

    1.显示当前系统上root、fedora或user1用户的默认shell;     ~]# grep -E "^(root|fedora|user1):" /etc/passwd|cut -d/ -f4 2.找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hel…

    Linux干货 2016-11-28
  • 用户和组相关的配置文件总结

    前言: 在用户管理,组管理过程中,最基本的四个文件就是/etc下面的passwd,shadow,group,gshadow。他们记录了与用户和组相关的信息。是学习和深入了解用户,组的基本。 除了这些基本的配置文件 还有与初始化相关的配置文件。定义用户添加时初始状态的配置文件/etc/default/useradd。 以及用户家目录的内容文件参考目录/etc/…

    Linux干货 2016-10-24
  • Keepalive高可用Nginx服务测试

    环境   系统版本:CentOS 7.2  节点1地址:10.1.8.81  节点2地址:10.1.8.83  虚拟IP地址:10.1.8.248 安装软件     yum -y install nginx     yum -y …

    Linux干货 2017-02-16