Linux(ubuntu)shell脚本条件判断函数和循环(入门必看)

简介: Linux(ubuntu)shell脚本条件判断函数和循环(入门必看)

一.shell脚本条件判断


       shell脚本之处条件判断,虽然可以通过&&和||来实现简单的条件判断,但是稍微复杂一点的场景就不适合了,shell脚本提供了if  then 的条件判断语句,写法。


1. if  then 语句写法

       if [条件判断] ;then


       //条件判断成立要做的事情


       fi   (结束)


编写:

f5c819e91d734ac390b89778e7f42776.png执行:


5c409b19227848faae723a343dcdd51c.png


2. if then else 语句写法

       if   【条件判断】; then


 //条件判断成立要做的事情


       else   【条件】


   //条件判断不成立要做的事情


   fi    //结束


编写:

d1bdac91e34f446d9f58a6a9311fbb73.png

执行:


7285e0e736904044980e3e76c30fc878.png


3. if  elif else  语句写发

if【条件判断】;then


//条件判断成立要做的事情


elif 【条件判断】;then


//条件判断成立要做的事情


else


//条件判断不成立要做的事情


fi


case 语句写法


case $变量   in


       "第一个变量内容")


       程序段


       ;;      //表示该程序块结束


       "第二个变量内容")


       程序段


       ;;


       "第n个变量内容")


       程序段


       ;;


esac


编写:

5c002451d89149088c973947f91f3a54.png

执行:


b90abb3db29e4ae4a976f6b71a7cca34.png


二.shell 脚本函数


1.  函数的简单使用

例如:

function fname (参数){
        //函数代码段
}
#!/bin/bash
function help(){
    echo "this is help cmd!"
}
function close(){
    echo "this is close cmd!"
}
case s1 in
        "-h")
        help
        ;;
        "-c")
        close
        ;;
esae

2.函数的传参:

#!/bin/bash
print(){
        echo "param 1:$1"
        echo "param 2:$2"
}
print a b

三.shell 循环


1.while   do  done  循环

       while [括号]     //括号内的状态是判断式


       do                  //循环开始


                 //循环代码


       done

#!/bin/bash
while [ "$value" != "close" ]
do
    read -p "please input str:" value
done
    echo "stop while!!"

执行:


13bbb95214c74b4991d3b2c7c4bbb756.png


直到输入  close  循环结束


2.  until  do   done  循环

until[条件]        //不成立开始循环


do


//循环代码段


done


3.for循环

for var in con1  con2  con3  ......


do


//循环体


done    


编写:

#!/bin/bash
for name in bit1 bit2 bit3 bit4
do
    echo "your name: $name"
done

4.for 循环数值处理写法

for((初始值;限制值;执行步长))

do

//循环代码段

done

编写:

#!bin/bash
read -p"please input count:" count
total=0
for((i=0;i<=count;i=i+1))
do 
    total=$(($total+$i))
done
echo "1+2+···+$count=$total"

执行:

754aceb1648f42f0b50087981909aeb0.png

相关文章
|
4月前
|
Ubuntu Linux UED
Ubuntu和Debian系统与Hat Linux系列的使用比较
所以,如果你想搞一个家用服务器,或者是个人使用,喜欢新鲜事物,那Ubuntu可能是你的最好选择。如果你需要一个在商业环境中经受住考验的系统,那Fedora或CentOS可能更符合你的口味。不过记住,CentOS现在是CentOS Stream,中途换马了,所以如果你是稳定性的极端追求者,可能得考虑一下这一变化。而Debian,则适合那些对稳定性需求极高,不太追求软件版本新旧的用户。
152 26
|
4月前
|
Ubuntu 搜索推荐 Linux
Ubuntu/Debian Hat系Linux的便捷操作指南
总的来说,虽然Ubuntu/Debian和Red Hat系列在操作方法上有所不同,但基本概念类似。掌握了包管理和服务管理,可以应对大多数常见的系统管理任务。同时,这两个系统都有丰富的在线资源可以查询,不管你在任务中遇到什么困难,搜索引擎都能帮你找到答案。这些基本技能能让你在Linux的世界里更加自如。
112 26
|
5月前
|
监控 Ubuntu Linux
在Ubuntu环境中制定脚本开机自动启动设置
以上就是在Ubuntu环境下制定脚本开机自动启动的设置方法。通过Systemd服务,你可以按需要轻松管理脚本的自动执行。全新的一天开始时,脚本已静静地运行,无需额外手动启动,机器恰如一位忠诚的仲夏夜的梦想者,在黎明的许诺中尽职尽责。于是心满意足地看着,任由它在自己选择的轨道上静静地飞翔。
498 26
|
5月前
|
Ubuntu 搜索推荐 Linux
详解Ubuntu的strings与grep命令:Linux开发的实用工具。
这就是Ubuntu中的strings和grep命令,透明且强大。我希望你喜欢这个神奇的世界,并能在你的Linux开发旅程上,通过它们找到你的方向。记住,你的电脑是你的舞台,在上面你可以做任何你想做的事,只要你敢于尝试。
285 32
|
5月前
|
Linux Shell
Centos或Linux编写一键式Shell脚本删除用户、组指导手册
Centos或Linux编写一键式Shell脚本删除用户、组指导手册
126 4
|
5月前
|
Linux Shell 数据安全/隐私保护
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
Centos或Linux编写一键式Shell脚本创建用户、组、目录分配权限指导手册
270 3
|
6月前
|
Linux Shell
在Linux、CentOS7中设置shell脚本开机自启动服务
以上就是在CentOS 7中设置shell脚本开机自启动服务的全部步骤。希望这个指南能帮助你更好地管理你的Linux系统。
433 25
|
6月前
|
Ubuntu Linux 编译器
在Ubuntu Linux系统下如何搭建并安装EDK2
以上就是在Ubuntu Linux系统下搭建并安装EDK2的过程。这个过程可能会有些复杂,但只要按照步骤一步步来,应该不会有太大问题。如果在过程中遇到任何问题,都可以在网上找到相应的解决方案。希望这个指南能对你有所帮助!
215 17
|
8月前
|
Shell Linux
【linux】Shell脚本中basename和dirname的详细用法教程
本文详细介绍了Linux Shell脚本中 `basename`和 `dirname`命令的用法,包括去除路径信息、去除后缀、批量处理文件名和路径等。同时,通过文件备份和日志文件分离的实践应用,展示了这两个命令在实际脚本中的应用场景。希望本文能帮助您更好地理解和应用 `basename`和 `dirname`命令,提高Shell脚本编写的效率和灵活性。
598 32
|
8月前
|
Ubuntu Linux
Ubuntu Linux
背景 Ubuntu起源于南非,其名称“Ubuntu”来源于非洲南部祖鲁语或豪萨语,意为“人性”、“我的存在是因为大家的存在”,这体现了非洲传统的一种价值观。Ubuntu由南非计算机科学家马克·沙特尔沃斯(Mark Shuttleworth)创办,他创立了Canonical公司来推动Ubuntu的发展。Ubuntu的第一个版本于2004年发布,至今已经走过了近20个年头,成为了Linux发行版中的佼佼者。
196 4
Ubuntu Linux