1、编写函数,实现打印绿色OK和红色FAILED
判断是否有参数,存在为Ok,不存在为FAILED
#!/bin/bash
input(){
if [ ! -z $1 ]
then
echo -e "\e[1;32m OK \e[0m"
else
echo -e "\e[1;31m FIALD \e[0m"
fi
}
input
input hello
2、编写函数,实现判断是否无位置参数,如无参数,提示错误
#!/bin/bash
input()
{
if [ $# -eq 0 ]
then
echo "错误"
else
echo "正确"
fi
}
input
input hello
3、编写函数实现两个数字做为参数,返回最大值
#!/bin/bash
max()
{
if [ $1 -gt $2 ]
then
echo "最大值:$1"
elif [ $1 -eq $2 ]
then
echo "相等"
else
echo "最大值:$2"
fi
}
max 3 4
4、编写函数,实现两个整数位参数,计算加减乘除。
#!/bin/bash
read -p "请输入两个数字:" a b
yunshuan()
{
echo "$a+$b=$[$a+$b]"
echo "$a-$b=$[$a-$b]"
echo "$a*$b=$[$a*$b]"
echo "$a/$b=$[$a/$b]"
}
yunshuan $a $b
5、将/etc/shadow文件的每一行作为元数赋值给数组
#!/bin/bash
declare -a arry
i=0
while read line
do
arry[$i]=$line
echo ${arry[$i]}
let i++
done < /etc/passwd
6、使用关联数组统计文件/etc/passwd中用户使用的不同类型shell的数量
#! /bin/bash
declare -A shells
while read line
do
type=`echo $line | awk -F: '{print $7}'`
let shells[$type]++
done < /etc/passwd
for i in ${!shells[*]}
do
echo "$i 的数量为 ${shells[$i]}"
done