Perl中Socket的使用
时间:2007-06-09 来源:A-Liang
常常惊叹perl语言简练与强大,很优雅的一款脚本语言。
以下是一个Socket应用的例子,功能判断Socket Server是否alive。请大家欣赏:
#! /usr/bin/perl
use strict;
use Socket; my ($server_ip, $port, $iaddr, $paddr, $proto, $line); if (@ARGV != 2) {
print "usage: xxx.perl server_ip port\n";
exit 1;
}
$server_ip = $ARGV[0];
$port = $ARGV[1];
if ($port =~ /\D/) { $port = getservbyname($port, 'tcp') }
die "invalid port" unless $port; $iaddr = inet_aton($server_ip) || die "invalid server IP: $server_ip";
$paddr = sockaddr_in($port, $iaddr);
$proto = getprotobyname('tcp');
socket(SOCK, PF_INET, SOCK_STREAM, $proto) || die "socket: $!";
connect(SOCK, $paddr) || die "connect: $!";
print "connect to: $remote";
close(SOCK);
print " completed.\n";
use strict;
use Socket; my ($server_ip, $port, $iaddr, $paddr, $proto, $line); if (@ARGV != 2) {
print "usage: xxx.perl server_ip port\n";
exit 1;
}
$server_ip = $ARGV[0];
$port = $ARGV[1];
if ($port =~ /\D/) { $port = getservbyname($port, 'tcp') }
die "invalid port" unless $port; $iaddr = inet_aton($server_ip) || die "invalid server IP: $server_ip";
$paddr = sockaddr_in($port, $iaddr);
$proto = getprotobyname('tcp');
socket(SOCK, PF_INET, SOCK_STREAM, $proto) || die "socket: $!";
connect(SOCK, $paddr) || die "connect: $!";
print "connect to: $remote";
close(SOCK);
print " completed.\n";
相关阅读 更多 +