欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

bash一些技巧

程序员文章站 2022-05-27 09:35:29
...

1. 设置当命令带有非0返回时立刻退出:set -e 2. 十六进制转换为十进制:num_16=`echo ibase=10;obase=16;$num|bc` 3. IP合法性校验 function valid_ip() { local ip_local=$1 local stat=1 if [[ $ip_local =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{

1. 设置当命令带有非0返回值时立刻退出:set -e

2. 十六进制转换为十进制:num_16=`echo "ibase=10;obase=16;$num"|bc`

3. IP合法性校验

function valid_ip()

{

local ip_local=$1

local stat=1

if [[ $ip_local =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then

OIFS=$IFS

IFS='.'

ip_local=($ip_local)

IFS=$OIFS

if [[ -z ${ip_local[0]} ]] || [[ -z ${ip_local[1]} ]] || [[ -z ${ip_local[2]} ]] || [[ -z ${ip_local[3]} ]]

then

return 1

fi

[[ ${ip_local[0]} -le 255 && ${ip_local[1]} -le 255 \

&& ${ip_local[2]} -le 255 && ${ip_local[3]} -le 255 ]]

stat=$?

fi

return $stat

}