shell编程二

if while case until break continue select for

if

 单分支 
  if 判断条件;then
     条件为真的分支代码 
  fi 

 双分支 
  if 判断条件; then
     条件为真的分支代码 
 else 
     条件为假的分支代码 
  fi

 多分支 
  if 判断条件1; then
    条件为真的分支代码 
  elif 判断条件2; then 
    条件为真的分支代码 
  elif 判断条件3; then 
    条件为真的分支代码
  else 
   以上条件都为假的分支代码 
  fi 

逐条件进行判断,第一次遇为“真”条件时,执行其分支,而后结束整个if语句 

)7%EVV(A2G6I2@~T]SLD

case
 
   case 变量引用 in 
   PAT1)
       分支1 
        ;;
   PAT2) 
       分支2
        ;; 
     *) 
     默认分支 
        ;; 
   esac 

case支持glob风格的通配符:
   *: 任意长度任意字符 
   ?: 任意单个字符 
  []:指定范围内的任意单个字符 a|b: a或b 

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

2、编写脚本/root/bin/yesorno.sh,提示用户输入yes或no,并判断用户输入的 是yes还是no,或是其它
信息 
M`WSQ9FLVKM8){QEB(BBRFP
3、编写脚本/root/bin/filetype.sh,判断用户输入文件路径,显示其文件类型 (普通,目录,链接
,其它文件类型) 
$EQ)55V4]P`DWB4ZB$21
4、编写脚本/root/bin/checkint.sh,判断用户输入的参数是否为正整数 
~ALG{G}F%6N_]K_M}{X}RA9

for

  for 变量名 in 列表;do 
       循环体 
  done 

执行机制:依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中的元素耗
尽,循环结束 

列表生成方式:
 (1) 直接给出列表 
 (2) 整数列表: 
   (a) {start..end} {1..10}
   (b) $(seq [start [step]] end);`seq 1 10`;n=5,`seq 1 $n`
 (3) 返回列表的命令 $(COMMAND) ;`eval 1 $n`
 (4) 使用glob,如:*.sh /etc/*
 (5) 变量引用; $@, $* 



本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/97831

(0)
parrotparrot
上一篇 2018-05-08
下一篇 2018-05-08

相关推荐

  • liunx 基础

    简单命令:

    Linux笔记 2018-04-01
  • 第十次笔记 二

    使用PEX和cobbleer实现网络服务器自动化安装系统

    2018-05-26
  • linux用户组命令使用方法

    实现用户账号的管理,要完成的工作主要有如下几个方面:
    用户账号的添加、删除与修改。
    用户口令的管理。
    用户组的管理。

    Linux笔记 2018-04-05
  • 第三周作业

    1 列出当前系统上所有已经登陆的用户的用户名,注意:同一个用户名登陆多次,则只显示一次。
    2 取出最后登陆到当前系统的用户的相关信息。
    3 取出当前系统上被用户当作其默认shell的最多的那个shell.
    4 将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
    5 取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
    6 列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字装换为大写后保存至/tmp/etc.conf文件中。
    7 显示/var目录下一级子目录或文件的总个数。
    8 取出/etc/group文件中第三个字符段数值最小的10个组的名字。
    9 将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。
    10. 请总结描述用户和组管理类命令的使用方法并完成以下练习:
    (1)创建组distro, 其GID为2016
    (2)创建用户mandriva, 其ID号为1005,基本组为distro
    (3)创建用户mageia, 其ID号为1100,家目录为/home/linux
    (4)给用户mageia添加密码,密码为mageedu
    (5)删除mandriva, 但保留其家目录
    (6)创建用户slackware, 其ID号为2002, 基本组为distro, 附加组为peguin
    (7)修改slackware的默认shell为/bin/tcsh
    (8)为用户slackware的新增附加组admins

    2018-06-05
  • 用户。组 ,文件的权限管理

    tr .grep 命令

    2018-04-02