shell流程控制 if
if条件语句语法
单分支
if [ 条件1 ];then
动作
fi
if [ 条件1 ]
then
动作
fi
双分支
if [ 条件1 ];then
动作
else
动作
fi
if [ 条件1 ]
then
动作
else
动作
fi
多分支
if [ 条件1 ];then
动作1
elif [ 条件2 ];then
动作2
else
动作3
fi
if [ 条件1 ]
then
动作1
elif [ 条件2 ]
then
动作2
else
fi
作业
#!/bin/bash
for (( ; ; ));do
echo -e "\n-----登录账号------"
read -p "请输入你的用户名: " user
read -s -p '请输入你的密码' pass
if [[ ${#pass} -le 8 && $pass =~ .*[A-Z]+. && $pass =~ .*[a-z]+. && $pass =~ .*[0-9]{1,}.* && $user != ^[0-9].* ]];then
for i in `cat user.txt`;do
if [ $i = ${user}:${pass} ];then
echo -e "\n登录成功"
echo -e "\n--------------------------------------------------------\n------------------------------------------\n--------------\n\n\n---------------------------------------"
break
elif [ `echo $i | cut -d ":" -f 1` = $user ];then
echo -e "\n密码错误"
fi
done
if [ `echo $i | cut -d ":" -f 1` != $user ];then
echo -e "\n-----注册账号------"
read -p "请输入用户名:" user
read -s -p "请输入密码" pass
read -s -p "请确认密码" pass1
if [ $pass = $pass1 ];then
if [[ ${#pass} -le 8 && $pass =~ .*[A-Z]+. && $pass =~ .*[a-z]+. && $pass =~ .*[0-9]{1,}.* && $user != ^[0-9].* ]];then
echo ${user}\:${pass} >> user.txt
else
echo -e "\n-----账号密码格式出错----"
echo -e "\n密码要小于8位数\n账号不能以数字开头\n密码要有大小写字母\n密码要有数字"
break
fi
else
echo -e "\n两次密码不一致"
fi
fi
else
echo -e "\n-----账号密码格式出错----"
echo -e "\n密码要小于8位数\n账号不能以数字开头\n密码要有大小写字母\n密码要有数字"
fi
done
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具