Shell编程高级篇之流程控制-if条件判断、if脚本案例

if条件判断

单分支if条件语句

在这里插入图片描述
语句格式:

if	[ 条件判断式 ]
#如果条件判断式满足条件,就执行then后的程序命令
#如果不满足条件,则直接退出 
then
	程序
fi

注意:

  1. if语句必须用fi结束
  2. 条件判断式的[],[]中的判断式条件必须要有空格(如:[ $a -le $b ]都要有一个空格)
  3. then后后面的程序,是在条件判断式成立后采取执行
双分支if条件语句

在这里插入图片描述
语句格式:

if	[条件判断式]
then
	程序
#条件成立,执行的程序
else
	程序
#条件不成立,执行的程序
fi
多分枝if分支语句

在这里插入图片描述
语句格式:

if	[条件判断式1]
then
	程序
#条件判断式1成立,执行程序1
elif [条件判断式2]
then
	程序
#条件判断式2成立,执行程序2
#还可以写更过的else………
else
	程序
#都不成立,则执行此程序
fi

注意:如果满足了条件判断式1,则不会继续往下判断,会执行此判断式的程序,执行完结束

if条件判断脚本

if条件判断-判断文件是什么类型的
#!/bin/bash

read -p "请输入要判断的文件名(绝对路径):" filename

if [ -L $filename ]
then
		if [ -c $filename ]
	then
		echo "这个文件是字符设备文件的软链接文件"
	elif [ -b $filename ]
	then
		echo "这个文件是块设备文件的软链接文件"
	elif [ -f $filename ]
	then
		echo "这个文件是普通文件的软链接文件"
		elif [ -d $filename ]
	then
		echo "这个文件是目录文件的软链接文件"
	elif [ -p $filename ]
	then
		echo "这个文件是管道符文件的软链接文件"
	else [ -S $filename ]
		echo "这个文件是套接字文件的软链接文件"
	if
elif [ -c $filename ]
then
	echo "这个文件是字符设备文件"
elif [ -b $filename ]
then
	echo "这个文件是块设备文件"
elif [ -f $filename ]
then
	echo "这个文件是普通文件"
	elif [ -d $filename ]
then
	echo "这个文件是目录文件"
elif [ -p $filename ]
then
	echo "这个文件是管道符文件"
elif [ -S $filename ]
then
	echo "这个文件是套接字文件"
else
	echo "咱也不知道这是个啥文件"
if条件判断-用来配置新虚拟机的ip
network="/etc/sysconfig/network-scripts/ifcfg-ens33"
if [ -f $network ]
#首先判断网卡文件是不是一个普通文件
then
	sed -i '4s/dhcp/static/' $network
	#把网卡文件中的第四行的dhcp换成static
	echo "请输入要设置的IP地址:"
	read IPADDR
	echo "请输入要设置的子网掩码(数值):"
	read PREFIX
	echo "请输入要设置的网关地址:"
	read GATEWAY
	echo "请输入要设置的首选DNS地址:"
	read DNS1
	echo "请输入要设置的备用DNS地址:"
	read DNS2
	echo -e "IPADDR=$IPADDR\nPREFIX=$PREFIX\nGATEWAY=$GATEWAY\nDNS1=$DNS1\nDNS2=$DNS2" >>$network
	#把输入的变量值追加到网卡文件中
	fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值