2013-03-25 33 views
-1

任何人都可以請告訴我如何檢測並顯示使用Perl的計算機IP地址。檢測並顯示計算機IP地址

在此先感謝。請幫忙。

代碼是:

#!/usr/bin/perl 
use IO::Socket; 
$hostname="(my hostname)"; 
my($addr)=inet_ntoa((gethostbyname($hostname))[4]); 
print "$addr\n"; 
+0

http://stackoverflow.com/questions/330458/how-can-i-determine-the- local-machines-ip-addresses-from-perl – NoviceProgrammer 2013-03-25 06:05:34

+0

哪一個?電腦很少只有一個地址。你爲什麼需要它? – ikegami 2013-03-25 06:07:45

+1

@ user2201935您現在已經向我們展示了您正在使用的代碼,但請包括您所遇到的異常 – TimothyP 2013-03-25 06:14:31

回答

0

你或許在尋找

use CGI qw(); 
my $cgi = CGI->new(); 
print $cgi->header('text/plain'); 
print $cgi->remote_addr(), "\n"; 
0

在谷歌快速搜索給了我以下信息

要獲取IP地址,你可以使用的gethostbyname內置函數 轉名成數字。要將該數字轉換爲大多數人所期望的帶點的 八位字節表單(a.b.c.d),請使用Socket模塊中的inet_ntoa 函數,該函數也附帶了perl。

use Socket; 
my $address = inet_ntoa(
     scalar gethostbyname($host || 'localhost') 
); 

更多的例子:Perldoc, how do I find my hostname, domainname or IP

相關問題