shell脚本基础(五)
过程式编程语言的代码执行顺序
顺序执行:逐条运行
选择执行:
代码有一个分支:条件满足时才会执行
两个或以上分支:只会执行其中一个满足条件的分支
循环执行
代码片断(循环体)要执行0、1或多个来回
选择执行
(1)单分支if语句:
if 测试条件
then
代码分支
fi
(2).双分支if语句
if 测试条件
then
代码分支--如果条件为真时执行分支
else
代码分支--如果条件为假时执行分支
fi
例:通过参数传递一个用户名给脚本,此用户不存在时,则添加
单分支
#!/bin/bash
#
if [ $# -lt 1 ];then
echo "At least one username."
exit 2
fi
if ! grep "^$1\>" /etc/passwd &> /dev/null;then
useradd $1
echo $1 >passwd $1 --stdin $>/dev/null
echo "Add user $1 finished"
fi
双分支
#!/bin/bash
#
if [ $# -lt 1 ];then
echo "At least one username."
exit 2
fi
if grep "^$1\>" /etc/passwd &> /dev/null;then
echo "User $1 exits."
else
useradd $1
echo $1 >passwd $1 --stdin $>/dev/null
echo "Add user $1 finished"
fi
练习1 :通过命令行参数给定两个数字,输出其中较大的数值;
#!/bin/bash
2 #
3 if [ $# -lt 2 ]; then
4 echo "Add least two."
5 exit 2
6 fi
7
8 if [ $1 -gt $2 ]; then
9 echo "The maxnumber is:$1"
10 else
11 echo "The maxnumber is:$2"
12 fi
简化
#!/bin/bash
2 #
declare -i max --声明一个整数变量
3 if [ $# -lt 2 ]; then
4 echo "Add least two."
5 exit 2
6 fi
7
8 if [ $1 -gt $2 ]; then
9 max=$1 --引入变量值
10 else
11 max=$2 --引入变量值
12 fi
echo "Max number is :$max." 显示变量结果
浙公网安备 33010602011771号