Shelle脚本编辑 if分支语句、多分支

# useradd         //创建一个用户
//用户的信息会写到/etc/passwd
//同时会生成以此用户名命名的家目录  在/home 创建

从键盘读取用户输入的密码信息,验证输入的密码是否为123456,如果输入正确,

显示密码正确,如果错误,显示密码错误。

#ssh   IP地址

#vim passwd.sh
  #!/bin/bash
  read  -p  "请输入密码:"passwd
   if  test  $passwd  =  "123456"     //字符串建议用双引号
   #  if  [ $passwd  ="123456"]     //用中括号写测试语句
 then
	echo“password   is    OK”
else
	echo “密码输入错误”
fi

结局而输入的密码信息和已有的信息做匹配的问题:
使用tost测试:
文件属性的测试
字符串的测试
算数测试

命令格式:
	test  测试语句
	[ 测试语句 ]        //括号两边要有空格
文件属性测试
	-e    文件存在为真
	-f     文件存在为真且是一个常规文件
	-d    文件存在为真且是一个目录
	-c     文件存在且特殊字符文件为真
	-b     文件存在且特殊块文件为真
	-g     文件存在且设置了sgid位为真
	-u     文件存在且设置了ugid位为真

	-r      文件存在且可读为真
	-w     文件存在且可写为真
	-x      文件存在且可执行为真
	-s      文件存在且不为空为真

逻辑与逻辑或:
	&&     逻辑与
	|   |      逻辑或
	
	true    为真
	false   为假

	true  &&  false    -->   false
	当第一个条件为true时,返回第二个条件  false
	true  &&  true     -->   true
	false  &&  false  -- >   false
	当第一个条件为false时,返回第一个条件

		//两者都为真,结果为真
		//有一个为假,结果为假

	true  |  |   false   -->   true
	true  |  |   true   -->    true
	false   |   |  false -->   false 
		//两者都为假   结果为假
		//有一个为真,结果为真  

字符串测试:
	-z  为空为真
	-n  不为空为真
	= 相同为真
	!= 不相同为真
	<  字典排名在前为真
	>  字典排名在后为真




	if  test  -z  $username
	then
	      echo  "请输入密码"
	else
	        执行密码不为空的语句
	fi

	if  test  -n $username
	then
	         执行密码不为空的语句
	else
	         echo “请输入密码:”	
	fi

算数测试操作:
	-eq   等于
	-ne   不等于
	-gt    大于
	-ge    大于等于
	-lt     小于
	-le    小于等于

单分支
if   测试的语句或命令
then
	执行语句
fi

双分支
if   测试的语句或命令
then
	执行语句1
else
	执行语句2
fi

多分支
if  测试的语句或命令
then
	执行语句1
elif
	执行语句2
elif
	执行语句3
elif
	执行语句4
else
	执行语句5
fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值