本文最后更新于:May 10, 2022 pm
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
目录
if判断
单分支
或者
示例:
| root@VM-12-8-ubuntu:~ root@VM-12-8-ubuntu:~ OK root@VM-12-8-ubuntu:~ root@VM-12-8-ubuntu:~ ok root@VM-12-8-ubuntu:~ root@VM-12-8-ubuntu:~ ok
|
多分支
| if [ 条件判断式 ] then 程序 elif [ 条件判断式 ] then 程序 else 程序 fi
|
双分支示例:
脚本 parameter.sh
| #!/bin/bash echo '======$n======' if [ $1 -lt 18 ] then echo "未成年" else echo "成年人" fi
|
执行:
| root@VM-12-8-ubuntu:~/myscript ======$n====== 未成年 root@VM-12-8-ubuntu:~/myscript ======$n====== 成年人
|
多分支示例:
脚本 parameter.sh
| #!/bin/bash echo '======$n======' if [ $1 -lt 18 ] then echo "未成年" elif [ $1 -lt 30 ] then echo "青年人" elif [ $1 -lt 50 ] then echo "中年人" else echo "老年人" fi
|
执行:
| root@VM-12-8-ubuntu:~/myscript ======$n====== 未成年 root@VM-12-8-ubuntu:~/myscript ======$n====== 青年人 root@VM-12-8-ubuntu:~/myscript ======$n====== 中年人 root@VM-12-8-ubuntu:~/myscript ======$n====== 老年人
|
for循环
基本语法1
用法
| for (( 初始值;循环控制条件;变量变化 )) do 程序 done
|
示例:
脚本 parameter.sh
| #!/bin/bash echo '======$n======' for (( i=1;i <= $1; ++i )) do sum=$[ $sum + $i ] done echo $sum
|
执行:
| root@VM-12-8-ubuntu:~/myscript ======$n====== 55
|
基本语法2
用法
| for 变量 in 值1 值2 值3 .... do 程序 done
|
示例:
| root@VM-12-8-ubuntu:~/myscript a b c d e
root@VM-12-8-ubuntu:~/myscript 5050
|
for整合$*和$@
| #!/bin/bash echo '======$*======' for it in "$*" do echo $it done
echo '======$@======' for it in "$@" do echo $it done
|
执行:
| root@VM-12-8-ubuntu:~/myscript ======$*====== a b c d e f g ======$@====== a b c d e f g
|
while循环
用法
示例:
脚本 parameter.sh
| #!/bin/bash echo '======$0======' a=1 while [ $a -le $1 ] do sum=$[ $sum + $a ] a=$[ $a + 1 ] done echo $sum
|
执行:
| root@VM-12-8-ubuntu:~/myscript ======$0====== 55
|
其中,脚本中也可以这样写:
| #!/bin/bash echo '======$0======' a=1 while [ $a -le $1 ] do let sum+=a let a++ done echo $sum
|
使用是一样的使用方法。