Linux—数组/包含关系判断/正则判断的shell脚本
关注微信公众号:CodingTechWork,一起学习进步。
数组
使用括号及空格来赋值数组。
#!/bin/bash
user_array=("user01" "user02" "user03")
user_array_length=`echo ${#user_array[@]}`
echo "user array length : $user_array_length"
正则
使用=~
判断正则关系。
#!/bin/bash
user_name=$1
group_name=$2
if [[ $user_name =~ ^[a-z0-9_-]{1,32}$ && $group_name =~ ^[a-z0-9_-]{1,32}$ ]]
then
echo "user_name: $user_name, group_name: $group_name valid!"
else
echo "user_name: $user_name, group_name: $group_name invalid!"
exit 1
fi
包含关系
构建一个包含判断的方法进行使用。
#!/bin/bash
user_name=$1
user_array=("user01" "user02" "user03")
user_array_length=`echo ${#user_array[@]}`
echo "user array length : $user_array_length"
# 判断包含关系
function contains() {
local n=$#
local value=${!n}
for ((i=1;i < $#; i++)) {
if [ "${!i}" == "${value}" ]; then
echo "y"
retrun 0
fi
}
echo "n"
return 1
}
# judge
if [ $(contains "${user_array[@]" "$user_name") == "y" ];
then
echo "user_name: $user_name may be contains in array, please check it!"
exit 1
fi
烧不死的鸟就是凤凰
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)