为什么我编写的同样的perl程序 在windows下运行和在linux下运行结果完全不同

为什么我编写的同样的perl程序 在windows下运行和在linux下运行结果完全不同,第1张

你的目的就是要把所有行串在一起吗,下面这样就可以:

123456open(FD,'blasttxt');while(<FD>){ chomp; print;}close(FD);

你使用$_来串联的方法会占用大量的内存,如果只是输出不无需这么处理的。

网关设备常用的脚本语言有:

1 Python:开源、跨平台、解释型语言,可以快速编写网络应用程序,用于网关设备中的数据监测、控制、数据处理等功能。2 Java:开源、跨平台、面向对象的语言,可以用来实现网关设备的各种功能,如数据处理、连接控制、设备管理等。3 Nodejs:开源、跨平台、事件驱动的脚本语言,可以实现网关设备的多种功能,如控制网关模块、实施网络管理、网络数据处理等。4 Lua:开源、跨平台、轻量级脚本语言,用于网关设备中的逻辑控制、数据处理、智能化等。5 PHP:开源、跨平台、解释型语言,可以用来实现网关设备的远程连接管理、设备状态检测等功能。

AIX什么的我不太懂~

不过后面的perl 命令我可以解释下

首先需要知道perl 中 $ 的用法,上次阅读的文件的当前输入行号,可以简单的理解为文件的行号,从1开始。

$=0 if(/^-+$/); 这里的意思就是如果发现本行是以 - 组成的,那么把当前行号至为0 ,那么下一行就为1;

print if($==2||$&&&!$s++); 当这个行号为2的时候($==2)或者第一次匹配到-------之后的下一行($& && !$s++),打印出本行

例如,通道内容如下:

虚拟行号 实际行号 内容

1 1 test line 1

2 2 test line 2 #打印,虚拟行号为2

3 3 test line 3

4 4 ------------------------------------

1 5 fisrt line after -------- #打印,为第一个------后的下一行

2 6 second line 2 #打印,虚拟行号为2

3 7 second line 3

4 8 -

1 9 --

1 10 ---

1 11 third line 1

2 12 ---- #打印,虚拟行号为2

1 13 4th line 1

2 14 4th line 2 #打印,虚拟行号为2

感觉是个很诡异的逻辑,不知道实际上有什么用~

以上就是关于为什么我编写的同样的perl程序 在windows下运行和在linux下运行结果完全不同全部的内容,包括:为什么我编写的同样的perl程序 在windows下运行和在linux下运行结果完全不同、网关设备使用的脚本语言、请问,在AIX中svmon -Pt30 | perl -e 'while(<>){print if($.==2||$&&&!$s++);$.=0 if(/^-+$/)}'这段命令等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9758126.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存