首页 > 程序人生 > 用Shell脚本对IP的字符串与整数形式进行相互转换

用Shell脚本对IP的字符串与整数形式进行相互转换

今天给别人写的一个小脚本,用来对ip的字符串与整数形式进行相互转换,在这里分享一下,希望对用到的朋友有所帮助,因为程序本身比较简单,这里不多做解释,直接贴内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/sh
 
if [ $# -ne 2 ]
then
	echo "$0 -[i|n] [ip|num]"
	exit 1
fi
 
function num2ip()
{
	num=$1
	a=$((num>>24))
	b=$((num>>16&0xff))
	c=$((num>>8&0xff))
	d=$((num&0xff))
 
	echo "$d.$c.$b.$a"
}
 
function ip2num()
{
	ip=$1
	a=`echo $ip | awk -F'.' '{print $1}'`
	b=`echo $ip | awk -F'.' '{print $2}'`
	c=`echo $ip | awk -F'.' '{print $3}'`
	d=`echo $ip | awk -F'.' '{print $4}'`
 
	echo "$(((d< &lt;24)+(c<&lt;16)+(b<&lt;8)+a))"
}
 
if [ "$1" = "-i" ]
then
	ip2num $2
elif [ "$1" = "-n" ]
then
	num2ip $2
else
	echo "$0 -[i|n] [ip|num]"
	exit 1
fi
分类: 程序人生 标签: ,
  1. 2010年5月27日20:37 | #1

    仅管不懂,还是顶下~

  2. Helen
    2010年5月27日22:59 | #2

    好吧,真是实用的好东东。。。 ❗

  3. 2010年5月27日23:05 | #3

    @Helen 这个叫分享~~

  4. 2010年5月28日17:50 | #4

    我也没看懂 我也来支持下

  5. 2010年5月28日23:08 | #5

    😛 @空灵

  6. 2010年5月28日23:24 | #6

    没看懂!不过也许以后用的到!

  7. 2010年6月1日23:53 | #7

    干什么用的呢?》
    我也不懂。。。

  8. 2010年6月3日10:39 | #8

    顶个、、、、、、、

  9. 2010年6月3日18:58 | #9

    名字真亲切呀,我也叫小武!

  10. 2010年6月3日18:59 | #10

    朋友内容不错,干脆做个链接吧,我的qq:249428508

  11. 2010年6月6日19:38 | #11

    @武龙杰 qq详聊,我加你了~~

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
您必须在 登录 后才能发布评论.