前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Bash 条件判断与流程控制相关语句详解

Bash 条件判断与流程控制相关语句详解

作者头像
康怀帅
发布2018-02-28 14:53:50
7360
发布2018-02-28 14:53:50
举报
文章被收录于专栏:康怀帅的专栏

介绍 if case 等语句。

条件判断语句

字符串判断

str1 = str2    当两个字符串有相同内容、长度时为真

str1 != str2   当字符串 str1 和 str2 不等时为真

-n str1      当字符串的长度大于 0 时为真(串非空)

-z str1      当字符串的长度为 0 时为真(空串)

str1        当字符串 str1 为非空时为真

数值的判断

int1 -eq int2   两数相等为真

int1 -ne int2   两数不等为真

int1 -gt int2   int1 大于 int2 为真

int1 -ge int2   int1 大于等于 int2 为真

int1 -lt int2   int1 小于 int2 为真

int1 -le int2   int1 小于等于 int2 为真

文件相关的判断语句

-r file     用户可读为真

-w file     用户可写为真

-x file     用户可执行为真

-f file     文件为普通文件为真

-d file     文件为目录为真

-c file     文件为字符特殊文件为真

-b file     文件为块特殊文件为真

-s file     文件大小非 0 时为真

-t file     当文件描述符(默认为 1 )指定的设备为终端时为真

逻辑判断

-a   与

-o  或

!   非

if

基本结构

代码语言:javascript
复制
if [ 条件判断 ]; then
do something here
elif [ 条件判断 ]; then
do another thing here
else
do something else here
fi

或者

代码语言:javascript
复制
if [ 条件判断 ]
then
 Command
else
 Command
fi

举例如下

代码语言:javascript
复制
# 获取操作系统类型
SYSTEM=`uname -s`

# [] 内两边必须有空格
# if 与 then 在同一行,判断语句后加上 ;

if [ $SYSTEM = "Linux" ];then
echo "Linux"
else
echo "OS is not Linuix"
fi

# 写在一行

if [ $SYSTEM = "Linux" ];then echo "Linux"; else echo "OS is not Linuix"; fi

也可以写成

代码语言:javascript
复制
SYSTEM=`uname -s`

if [ $SYSTEM = "Linux" ]
then
echo "Linux"
else
echo "OS is not Linuix"
fi

case

基本结构

代码语言:javascript
复制
case $1 in
  模式1 )
  命令序列1
  ;;

  模式2 )
  命令序列2
  ;;

  * )
  默认执行的命令序列
  ;;
esac

for

代码语言:javascript
复制
for (( i = 0; i < 10; i++ )); do
  #statements
done

for in

代码语言:javascript
复制
for arg in "$@"
do
  echo $arg
done

while

代码语言:javascript
复制
while [[ condition ]]; do
  #statements
done

until

代码语言:javascript
复制
until [[ condition ]]; do
  #statements
done

参考链接

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-06-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 条件判断语句
    • 字符串判断
      • 数值的判断
        • 文件相关的判断语句
          • 逻辑判断
          • if
            • 基本结构
            • case
              • 基本结构
              • for
              • for in
              • while
              • until
              • 参考链接
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档