一些常用的shell脚本(持续更新)
忘性大,记录一些可能会重复使用到的一些 shell 函数或语句。
校验IP地址是否符合规范
function validate_ip_address {
local ip_address=$1
# 使用正则表达式校验IP地址格式是否符合规范
if [[ $ip_address =~ ^([0-9]{1,3}\.){3}[0-9]{1,3}$ ]]; then
# 对IP地址进行拆分
IFS='.' read -r -a ip_parts <<< "$ip_address"
# 判断每个数字是否在0-255之间
valid_ip=true
for ip_part in "${ip_parts[@]}"; do
if (( $ip_part < 0 || $ip_part > 255 )); then
valid_ip=false
break
fi
done
# 输出结果
if [ $valid_ip == true ]; then
echo "IP地址 $ip_address 符合规范。"
return 0 # 返回0表示IP地址符合规范
else
echo "IP地址 $ip_address 不符合规范。"
return 1 # 返回1表示IP地址不符合规范
fi
else
echo "IP地址 $ip_address 不符合规范。"
return 1 # 返回1表示IP地址不符合规范
fi
}
#ip不符合规范则退出
validate_ip_address $ip
if [ $? != 0 ]; then
exit 1
fi
判断变量是否为空
if [ ! -n "$ip" ]
then
echo "IP为空"
exit 1
else
echo "IP不为空"
fi