获取本机所有IP和设备的绑定情况
发布时间:2020-12-15 21:11:00 所属栏目:大数据 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/usr/bin/perluse strict;use warnings;#首先,文件通过参数传入my $arg_len = @ARGV;my @lines;if($arg_len == 1) { my $p_file_path = $ARGV[0];
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #!/usr/bin/perl use strict; use warnings; #首先,文件通过参数传入 my $arg_len = @ARGV; my @lines; if($arg_len == 1) { my $p_file_path = $ARGV[0]; open(PROC_FILE,$p_file_path) || die("open $p_file_path error $?"); @lines = <PROC_FILE>; } elsif($arg_len == 0) { @lines = <STDIN>; } my $dev_name; my $inet_addr; my %dev_ip_map; for(@lines) { chomp($_); #首先判断起始字符串 if(m/^w+/) { #表明是设备文件 $dev_name = $_; $dev_name=~s/s+.*//i; } else { #取出IP地址 if(m/inet /) { $inet_addr = $_; $inet_addr=~s/^s+//i; $inet_addr=~s/inet /ipv4/i; my @kv_str_arr = split(' ',$inet_addr); for(@kv_str_arr) { if(m/ipv4/) { my @kv_arr = split(':',$_); #将dev name和ipv4地址绑定在一起 $dev_ip_map{$dev_name} = $kv_arr[1]; } } } } } while((my $k,my $v) = each %dev_ip_map) { print "$k $vn"; } if($arg_len == 1) { close(PROC_FILE); } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |