1. 数组
root@bk:~# arr=(aa bb cc)
root@bk:~# echo ${arr[@]}
aa bb cc
root@bk:~# echo ${arr[0]}
aa
root@bk:~# echo ${arr[2]}
cc
# 遍历序号
root@bk:~# for i in ${!arr[@]};do echo $i;done
0
1
2
# 通过序号遍历元素
root@bk:~# for i in ${!arr[@]};do echo ${arr[$i]};done
aa
bb
cc
# 求数组长度
root@bk:~# echo ${#arr[@]}
3
# 数组增加,删除元素
root@bk:~# echo ${arr[@]}
aa bb cc dd
root@bk:~#
root@bk:~# arr+=(ee)
root@bk:~#
root@bk:~# echo ${arr[@]}
aa bb cc dd ee
root@bk:~#
root@bk:~# unset arr[4]
root@bk:~#
root@bk:~# echo ${arr[@]}
aa bb cc dd
2. 石头剪刀布
#!/bin/bash
game=(石头 剪刀 布)
num=$((RANDOM % 3))
computer=${game[$num]} #通过随机数获取计算机的出拳
#出拳的可能性保存在一个数组中,game[0],game[1],game[2]分别是 3 中不同的可能
echo "请根据下列提示选择您的出拳手势"
echo "1.石头"
echo "2.剪刀"
echo "3.布"
read -p "请选择 1-3:" person
case $person in
1)
if [ $num -eq 0 ]; then
echo "平局"
elif [ $num -eq 1 ]; then
echo "你赢"
else
echo "计算机赢"
fi
;;
2)
if [ $num -eq 0 ]; then
echo "计算机赢"
elif [ $num -eq 1 ]; then
echo "平局"
else
echo "你赢"
fi
;;
3)
if [ $num -eq 0 ]; then
echo "你赢"
elif [ $num -eq 1 ]; then
echo "计算机赢"
else
echo "平局"
fi
;;
*)
echo "必须输入 1-3 的数字"
;;
esac
标签:aa,arr,剪刀,09,石头,echo,num,bk,root
From: https://www.cnblogs.com/ckh2023/p/17747631.html