0
我应该是盲目的,因为我找不到在Ubuntu和Debian的发行版中可用的这些命令,既不包含它们的软件包。linux bash inet_ntoa inet_aton
我是否可以自己编写并编译它们(或者用perl或任何语言编写或查找此代码)还是它(我的意思是inet_aton,inet_ntoa ..)可用作这些发行版中某处的bash命令?
THX
我应该是盲目的,因为我找不到在Ubuntu和Debian的发行版中可用的这些命令,既不包含它们的软件包。linux bash inet_ntoa inet_aton
我是否可以自己编写并编译它们(或者用perl或任何语言编写或查找此代码)还是它(我的意思是inet_aton,inet_ntoa ..)可用作这些发行版中某处的bash命令?
THX
inet_ntoa
和inet_aton
不是命令 - 他们的库功能,文本和IP地址的二进制表示之间的转换。
你可以在这些功能很容易被使用在Perl Socket
模块:
$ perl -e 'use Socket; print inet_aton("123.45.67.89"), "\n"'
{-CY
$ perl -e 'use Socket; print inet_ntoa("{-CY"), "\n"'
123.45.67.89
或socket
模块在Python:
$ python -c 'import socket; print socket.inet_aton("123.45.67.89")'
{-CY
$ python -c 'import socket; print socket.inet_ntoa("{-CY")'
123.45.67.89
,但我不知道为什么你要在bash脚本中处理地址的二进制表示。 (在上面的例子中,地址123.45.67.89的字节恰好对应于可打印的ASCII字符,但是你不能指望它是真的......)
我很惊讶你需要他们在bash命令行。通过一切手段,实现它们(在perl中对我来说看起来很理智) – sehe 2011-05-07 22:05:38
仅仅因为我有一些用bash编写的管理脚本,并且出于可移植性的原因,我想避免为了1行需要而调用其他解释器。 – hornetbzz 2011-05-08 13:18:41