首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >shell流程控制语句

shell流程控制语句

作者头像
公众号-利志分享
发布于 2022-04-25 08:33:37
发布于 2022-04-25 08:33:37
5360
举报
文章被收录于专栏:利志分享利志分享

#!/bin/bash

# shell流程控制语句

# 流程控制语句

# if 语句语法格式:

# if condition

# then

# command1

# command2

# ...

# commandN

# fi

# 写成一行:if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi

if [ $(ps -ef | grep -c "ssh") -gt 1 ]

then

echo "true"

fi

# if else 语法格式:

# if condition

# then

# command1

# command2

# ...

# commandN

# else

# command

# fi

num1=$[2*3]

num2=$[1+4]

if test [num1] -eq [num2]

then

echo "两个数字相等"

else

echo "两个数字不相等"

fi

# for 循环一般格式

# for var in item1 item2 ... itemN

# do

# command1

# command2

# ...

# commandN

# done

# 写成一行:for var in item1 item2 ... itemN; do command1; command2… done;

for tmp in 1 2 3 4 5

do

echo "this value is $tmp"

done

for str in 'this is a string'

do

echo $str

done

# while 语句

# while condition

# do

# command

# done

int=1

while(( $int<=5 ))

do

echo $int

let "int++"

done

# 无限循环语法格式:

# while :

# do

# command

# done

# 或者

# while true

# do

# command

# done

# 或者

# for (( ; ; ))

# until 循环 until循环执行一系列命令直至条件为真时停止。

# until condition

# do

# command

# done

# case 语句 case语句格式如下:

# case 值 in

# 模式1)

# command1

# command2

# ...

# commandN

# ;;

# 模式2)

# command1

# command2

# ...

# commandN

# ;;

# esac

anum=3

case $anum in

1)

echo "选中1"

;;

2)

echo "选中2"

;;

3)

echo "选中3"

;;

4)

echo "选中4"

;;

esac

# 跳出循环 break命令

# continue命令与break命令类似,只有一点差别,它不会跳出所有循环,仅仅跳出当前循环。

# case的语法和C family语言差别很大,它需要一个esac(就是case反过来)作为结束标记,每个case分支用右圆括号,用两个分号表示break。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-11-02,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档