首页 | 互联网 | IT动态 | Cisco | Windows | Linux | Java | .Net | Oracle | 华为 | 存储世界 | 服务器 | 网络设备 | IDC | 安全 | 求职招聘
IT培训 | 数字网校 | 技术专题 | 电子书下载 | 教学视频 | 网页设计 | 平面设计 | 解决方案 | 直播室 | 虚拟考场 | 搜索 | 博客 | 沙龙 | 论坛
中国IT实验室Linux频道
中国IT教育
首页 新手入门 Linux编程 系统管理 网络管理 Linux认证 Unix/BSD Linux数据库 Linux集群 Linux手册 Linux下载 论坛 专题 RSS
您现在的位置: 中国IT实验室 >> Linux >> Linux编程 >> SHELL编程 >> 文章正文

shell简介入门之bash编程之流程控制(1)


  在介绍流程控制之前我们先来看看twst命令。test命令的参数是条件判式,当为真时则传回非零
  值,而条件为假时则传回零。在所有的流程控制都必须用到test命令来判断真假。另外一种方法
  是使用中括号[],一般都是用中括号居多。测试的种类有:
  A::字符串测试
  string1 = string 2 两字符串是否相等
  string1 != string2 两字符串是否不等
  string  字符串是否是空的
  -z string 字符串长度是否为0
  -n string 字符串长度是否非0
  B::整数测试
  -eq 等于
  -ne  不等
  -lt 小于
  -gt  大于
  -le 小于或等于
  -ge 大于或等于
  C::文件测试
  -b 区块文件
  -c 字符文件 
  -d 目录
  -f 一般文件
  -r 可读
  -w 可写
  -x 可执行
  -k 设定了限定位
  -g 设定了组位
  -u 设定了use id
  -p 管线
  -s 文件大小非0
  以下介绍各种流程控制
  A::
  if then
  语法如下:
  if (condition)
   then
   then-commands
  fi
  condition是一个test命令。往的一所介绍的各种流程中的conditon都是test命令。
  例如:
  test4.sh
  --------------------------------------------------
  #!/bin/bash
  if(test $# !=0)
   then
   echo Arg1:$1
  fi
  --------------------------------------------------
  $/test4.sh hello
  Arg1:hello
  $./test4.sh
  $
  B::
  if then else
  语法如下:
  if(confition)
   then
   then-commands
   else
   else-commands
  fi
  C::
  if then elif
  语法如下:
  if (conditon1)
   then
   commands1
  elif(condition2)
   then
   commands2
  else
   commands3
  fi
  例如:
  test5.sh
  -------------------------------------------------------------
  #!/bin/bash
  echo `word 1:`
  read word1
  echo `word 2:`
  read word2
  echo `word 3:`
  read word3
  if(test "$word1" = "$word2" -a "$word2" = "$word3")
   then
   echo `match:words 1,2 & 3`
  elif(test "$word1" = "$word2")
   then
   echo `match:word 1 & 2`
  elif(test "$word1" = "$word3")
   then
   echo `match:words 1 & 3`
  elif(test "$word2"="$word3")
   then
   echo `match:words 2 & 3`
  else
   echo `no match `
  ------------------------------------------------------
  $./test5.sh
  word 1:
  do
  word 2:
  do
  word 3:
  do
  match:words 1,2&3
  D::
  for in
  语法如下:
  for var in arg-list
   do
   commands
  done
  例如:
  test6.sh
  --------------------------------------------------
  #!/bin/bash
  for a in xx yy zz
   do
   echo $a
  done
  ---------------------------------------------------
  结果如下:
  xx
  yy
  zz
  E::
  语法如下
  for var
   do
   commands
  done
  例如
  test7.sh
  -------------------------------
  #!/bin/bash
  for a
   do
   echo $a
  done
  -----------------------
  $./test7.sh xx yy zz
  xx
  yy
  zz
  
   ----部分取自<<linux程序设计>>
【责编:admin】
中国IT教育
相关产品和培训
文章评论
 友情推荐链接
 专题推荐

 ·Linux 安全管理
 ·Linux 下DNS服务器架设攻略
 ·Linux 下的路由的配置与应用
 ·专题:Apache实用手册
 ·全面剖析Linux文件系统
 ·Linux常用命令全集
 ·GRUB 玩转任意操作系统多重启动引导
 ·想传就传 多平台随心所欲架设FTP
 ·网络圈地 建立企业web服务器专题
 ·Linux安装指南专题
 今日更新
 认证培训
 频道精选
 Windows频道导航