当前位置:Linux教程 - Linux综合 - 一个把IP地址转化为长整数的脚本

一个把IP地址转化为长整数的脚本

  有些时候,很多人在pub网址的时候会使用一个长整数,这样相对来说IP地址不易为被别人记住,但一样可以在flashfXP等工具中使用,即使是ping也支持这种写法,如:ping 16843009 PING 16843009: (1.1.1.1): 56 data bytes 不过我写这个脚本的最初目的,只是为了用较短的代码判断输入是不是一个符合格式的IP地址。 [code:1:65116d8eca] #!/usr/bin/ksh expr $1 : '^[1-9]\{1\}[0-9]\{0,2\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$' >/dev/null 2>&1 { echo "bad ip address";exit; } IFS=. set $1 if [[ $1 -le 255 && $2 -le 255 && $3 -le 255 && $4 -le 254 ]] then echo $(($1*256*256*256+$2*256*256+$3*256+$4)) else echo "still a bad ip" fi [/code:1:65116d8eca]

(出处:http://www.sheup.com)