[root@dr-mysql01 ~]# cat aa.pl use LWP::UserAgent; use Data::Dumper; my $ua = LWP::UserAgent->new; $phone=$ARGV[0]; $cc=$ARGV[1]; $ua->timeout(10); $ua->env_proxy; $ua->agent("Mozilla/8.0"); $host = "xxxxxxxx"; my $response = $ua->get($host); my $var= Dumper($ua); print $var; print "\n"; my $var= Dumper($response); print $var; print "\n"; $ua->default_headers; if ($response->is_success) { print $response->decoded_content; # or whatever } else { die $response->status_line; } [root@dr-mysql01 ~]# set -o vi [root@dr-mysql01 ~]# perl aa.pl 180722722237 test $VAR1 = bless( { 'max_redirect' => 7, 'protocols_forbidden' => undef, 'show_progress' => undef, 'handlers' => { 'response_header' => bless( [ { 'owner' => 'LWP::UserAgent::parse_head', 'callback' => sub { "DUMMY" }, 'm_media_type' => 'html', 'line' => '/usr/share/perl5/LWP/UserAgent.pm:609' } ], 'HTTP::Config' ) }, 'no_proxy' => [], 'protocols_allowed' => undef, 'use_eval' => 1, 'requests_redirectable' => [ 'GET', 'HEAD' ], 'timeout' => 10, 'def_headers' => bless( { 'user-agent' => 'Mozilla/8.0' }, 'HTTP::Headers' ), 'proxy' => {}, 'max_size' => undef }, 'LWP::UserAgent' ); bless 引用 特定的包 perl 对象实现: bless 以一个普通的指向数据结构的引用为参数。它将会把那个数据结构(注意,不是引用本身) 标记为属于某个特定的包, vim /usr/share/perl5/Net/Ping.pm $p = Net::Ping->new("icmp"); sub new { my ($this, $proto, # Optional protocol to use for pinging $timeout, # Optional timeout in seconds $data_size, # Optional additional bytes of data $device, # Optional device to use $tos, # Optional ToS to set ) = @_; print "0321.\$this is $this\n"; my $class = ref($this) || $this; my $self = {}; my ($cnt, # Count through data bytes $min_datasize # Minimum data bytes required ); bless($self, $class); ping 方法的第一个参数是$self 对象名 第2个参数是 域名或者IP地址 第三个参数是 超时秒数 $this = Net::Ping包的名字 $self is Net::Ping=HASH(0x6fad48) --对象 $class is Net::Ping jrhmpt01:/root# perl y2.pl 0321.$this is Net::Ping $self is Net::Ping=HASH(0xe1cd48) $class is Net::Ping $var---- $self 对象: $VAR1 = bless( { 'proto_num' => 1, 'proto' => 'icmp', 'data' => '', 'device' => undef, 'tos' => undef, 'data_size' => 0, 'pid' => 6771, 'econnrefused' => undef, 'fh' => bless( \*Symbol::GEN0, 'FileHandle' ), 'timeout' => 5, 'local_addr' => undef, 'seq' => 0, 'retrans' => '1.2' }, 'Net::Ping' ); jrhmpt01:/root#