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 16:31
下一篇 2018-05-08 17:03

相关推荐

  • Linux用户组管理及用户权限及管道符应用

    一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ]# who |  cut -d ‘ ‘ -f1 | sort -u who:显示所有已经登录用户的用户名 cut -d ‘ ‘ -f1:取第1列字段数据   sort -u:忽略相同行数据 二、取出最后登录到…

    2018-07-07
  • Linux系统-动态库删除或破坏等,修复操作

    Linux,CentOS7,救援模式(Rescue a CentOS System),动态库(shared libraries)

    2018-04-20
  • Linux系统下软硬链接底层工作原理的理解

    软硬链接底层工作原理

    2018-03-31
  • CentOS系统Shell编程语言基础之Bash的基础特性

    bash的基础特性之命令历史: 命令历史:shell进程会在其会话中保存此前用户提交执行过的命令~]#history定制history的功能,可通过环境变量实现HISTSIZE:shell进程可保留的命令历史的条数HISTFILE:持久保存命令历史的文件, “.bash_history”HISTFILESIZE:命令历史文件的大小 命令用法: history…

    Linux笔记 2018-06-27
  • Linux发行版的基础目录名称命名法则及功用规定

    FHS filesystem hierarchy standard /bin: 所有用户可用的基本命令程序文件 /sbin: 供系统管理使用的工具程序 /boot: 引导加载器必须用到的各静态文件:kernel,initramfs(initrd),grub等; /dev: 存储特殊文件或设备文件 /etc:系统程序的配置文件,只能为静态 /home:普通的用…

    Linux笔记 2018-05-11
  • 本地和网络yum创建

    本地源配置: 1 首先挂在光盘或镜像到虚拟机相关目录2 创建/etc/repos.d/xxx.d(在这之前先备份好原有的配置文件为xxx.d.bak,文件的配置如下图)3 清理旧yum仓库,生成新yum仓库信息缓存并查看 网络源配置: 1 下载新的CentOS-Base.repo 到/etc/yum.repos.d/ wget -O /etc/yum.rep…

    2018-04-08