linux – 我的Perl有多糟糕?获取IP地址并返回完全限定域名的脚
发布时间:2020-12-13 23:10:18 所属栏目:Linux 来源:网络整理
导读:我邀请你,撕我一个新的. 这段代码完成了工作.它需要一个包含IP列表的.txt文件,并写入包含各自完全限定域名的文件. 我想知道这些代码在哪些方面写得不好.这有什么坏习惯? 我是一个perl和编程新手.我设法使用谷歌和跟踪和错误把它放在一起.让它工作令人满意,
我邀请你,撕我一个新的.
这段代码完成了工作.它需要一个包含IP列表的.txt文件,并写入包含各自完全限定域名的文件. 我想知道这些代码在哪些方面写得不好.这有什么坏习惯? 我是一个perl和编程新手.我设法使用谷歌和跟踪和错误把它放在一起.让它工作令人满意,但请告诉我如何改进. use strict; use warnings; use Socket; use autodie; my $filename = 'IPsForFQDN.txt'; #File with list of IPs to lookup. #One IP address per line like so: #10.10.10.10 #10.10.10.11 #10.10.10.12 #etc... open(my $fh,'<:encoding(UTF-8)',$filename) or die "Could not opne file '$filename' $!"; my $fqdn = ''; while (my $row = <$fh>) { chomp $row; print "$rown"; $fqdn = gethostbyaddr(inet_aton($row),AF_INET); print $fqdn; print "n"; open FILE,">>fqdn.txt" or die $!; print FILE $fqdn; print FILE "n"; close FILE; } print "donen"; 例如,需要{chomp $row;}行吗?我没有想法它做了什么. 我对整个{或死$!;}的事情同样感到困惑. 解决方法
$!报道为什么失败了.如果您无法打开文件,则会指出失败的原因.
perlvar在
error variables有一节.
您正在使用chomp从每行末尾删除换行符. 在编写文件时,您稍微区别地调用open,请考虑使用与您在代码中打开以供阅读时相同的3参数版本(也请参阅我给您打开的链接),并使用相同的编码样式.保持一致是好的,这种方法也更安全. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- linux – 错误原因:无效(旧?)表或数据库名称’找不到’
- linux – 如何通过configure生成libtool自定义脚本?
- linux – 如何找到ubuntu框的默认网关
- Linux使用OpenGL 3.2 w / FBO在屏幕外渲染
- linux-networking – ISP的设备是否配置错误?在Internet接
- LINUX实战:VMware虚拟机的克隆与Linux系统网卡设置
- linux-networking – Linux:ip别名与iproute
- linux – Iptables drop hex-string udp
- linux – iwlist()命令如何扫描无线网络?
- Linux命令——whiptail交互式shell脚本对话框