美文网首页我用 Linux
shell(三)——循环结构和函数

shell(三)——循环结构和函数

作者: amyhy | 来源:发表于2017-09-19 10:07 被阅读18次

循环结构

1)  循环操作是什么? 
2) 循环开始的条件
3)  循环终止的条件

for, while, util

for循环结构

for循环: 明确知道循环的次数

for 变量名称 in 变量取值; do
    statement
    statement
done


for 变量名称 in 变量取值 
do
    statement
    statement
done

变量取值 
    数字
        10 20 30
        花括号展开   {1..100}
        [root@shell shell]# seq 10
        [root@shell shell]# seq 2 10
        [root@shell shell]# seq 1 2 10

编写脚本, 计算1---100的和

#!/bin/bash
sum=0
for i in {1..100};do
  let sum=$sum+$i
done
echo $sum

编写脚本, 计算1---100所有奇数的和

#!/bin/bash

sum=0

for i in `seq 100`;do
 let ys=$i%2
 if [ $ys -ne 0 ];then
  let sum=$sum+$i
 fi
done

echo $sum

中断循环语句:

break               中断整个循环
continue            中断本次循环

break
中断的例子

# !/bin/bash

sum=0

for i in `seq 100`;do
    let sum=$sum+$i
    if [ $sum -ge 3000 ];then
        echo "$i,$sum"
        break
    fi
done

运行结果

student@student-VirtualBox:/tmp$ ./t1.sh 
77,3003

while循环

用法1:
while CONDITION; do
    statement
    statement
    ....
    change_condition_statement
done

编写脚本,计算1--100的和

# !/bin/bash

sum=0
i=1

while [ $i -le 100 ];do
    sum=$((sum+i))
    let i++
done
echo $sum

util循环:

util CONDITION; do
    statement
    statement
    ....
done

条件为假循环开始,条件为真循环结束 

函数

定义函数

方法1:

函数名称() {    
}

方法2:
function 函数名称{
}

编写脚本,提供给用户功能菜单,包括创建目录及删除目录,根据用户的需求分别实现创建、删除目录功能,创建、删除目录的功能使用函数实现

#!/bin/bash

createdir() {
   if [ -d $1 ]; then
    echo "目录$1已经存在"
   else
        mkdir -p $1
        echo "目录$1创建完成."
   fi
}

removedir() {

   read -p "输入目录名称:" dir
   if [ -d $dir ]; then
      rm -rf $dir
      echo "目录$dir已经删除"
   else
      echo "目录$dir不存在"
   fi
}

showmenu() {
cat << eof
==========目录基本管理============
1   创建目录
2   删除目录
q   退出  
eof
}

while true; do
    showmenu
    echo
    read -p "请输入你的选择:" choice

    case $choice in
      1)
        read -p "请输入目录名称:" dir
    createdir $dir
    ;;
      2)
    removedir
    ;;
      q)
    exit 0
    ;;
    esac
done

相关文章

  • shell(三)——循环结构和函数

    循环结构 for循环结构 编写脚本, 计算1---100的和 编写脚本, 计算1---100所有奇数的和 中断循环...

  • Linux Shell:Shell循环语句

    摘要:Linux,Shell Shell中常用循环有for,while Shell循环语法结构 (1)for循环语...

  • lx4.shell2

    shell2 shell函数 字符隔断和迭代器 IFS 流程控制 循环

  • Shell循环

    Bash Shell中有三种循环方式:for / while / util for 循环 语法结构 : 详细示例:...

  • shell函数

    shell函数 死循环 shell函数 什么时候用到函数执行的功能类似根据实际需求 ,进行设置shell函数定义格...

  • shell循环结构

    for循环 语法结构及其特点 特点 遍历/列表式循环根据变量的不同取值,重复执行命令序列 语法结构 for循环的执...

  • 2.2.2 shell循环语句和文件读写

    shell脚本有3种可用的循环结构,他们分别是while循环,for循环,until循环。其中for循环用法比较特...

  • JavaScript基础语法

    一、基本语法 二、变量 三、运算符 四、分支结构 五、循环结构 六、函数

  • shell(一)

    程序的三大结构: 顺序、循环、分支shell是一个用C语言编写的程序,他是用户使用LInux的桥梁,shell既是...

  • 2级小知识

    1.c程序 c语言程序结构有三种,顺序结构,循环结构(三种),选择结构(if,witch) 2.main函数 每个...

网友评论

    本文标题:shell(三)——循环结构和函数

    本文链接:https://www.haomeiwen.com/subject/bmcisxtx.html