perl next和last】的更多相关文章

精通Perl(第2版)(通往Perl大师之路必读经典书籍,体现了一种编程思维,能够帮你解决很多实际的问题) [美]brian d foy(布瑞恩·D·福瓦)著   王兴宇 刘宸宇 译 ISBN 978-7-121-25419-2 2015年3月出版 定价:89.00元 424页 16开 编辑推荐 - 探索高级的正则表达式功能 - 如何避免程序的常见安全问题 - 对 Perl 程序的性能分析和基准测试可以让你发现改进之处 - 清理 Perl 代码,使之更加直观和易读 - 了解 Perl 如何持续跟…
introduction: http://www.yiibai.com/perl/perl_introduction.html functions: http://www.yiibai.com/perl/perl_function_references.html#perl_function_references perldoc: http://perldoc.perl.org/index.html…
Perl编程之路3 标签: perl 列表与数组   Perl里面代表复数的就是列表和数组 列表(list)指的是标量的有序集合, 而数组(array)则是存储列表的变量. 在Perl这两个属于尝尝混用, 不过更精确的是, 列表指的是数据, 而数组指的是变量, 列表的值不一定放在数组里, 但每个数组一定包含一个列表(即便是不含任何元素的空列表)   数组或列表中的每个元素, 都是单独的标量变量, 拥有独立的标量值, 从起始元素到终止元素的先后次序是固定的, 因为没个元素都是独立不相关的标量值,…
这些主要是从 "小骆驼" 书上粘贴或者摘抄出来的, 个人认为需要记的语法知识 "在某些情况下, 你可能需要在一台机器上写程序, 再传送到另一台机器上运行.这时候, 请使用"文本模式(text mode)" 或者"ASCII模式(ASCIImode)". 记住, 千万不能是"二进制模式(binary mode)"即便是文本文件, 不同的系统对待换行符的方式也有所不同, 所以碰到无法理解的换行符,某些老旧的Perl还可能…
一切要从Hollo world开始 公司要用perl....啊, 不会只能自学了, 毕竟是公司啊, 不是学校...公司不学习就滚蛋了...惨惨惨 因为是学习嘛, 感觉开虚拟机比较麻烦所以直接用了个 瘟都死 环境下的 http://www.perlchina.org/get.html Perl是脚本语言,由解释器解释运行,跨平台的 (貌似草莓的这个这跨平台比较好, ps:刚接触, 真心不知道哪好 pps:草莓??王草莓??上单??哈哈我是逗比, 表理我~) 大家可以选择下载 先检查你的perl是否…
提供域名,dnspod 账户密码(毕竟dns密码比较重要 不能谁 cat一下都可以看到 需要base64加密),原IP,切换目标IP, #!/bin/perl use warnings; use MIME::Base64; use LWP; use Encode; use JSON; use Data::Dumper; my $ChangeDomain='linuxjs.com'; my $BeforeIP='XXX.XXX.XXX.XXX'; my $ChangeIP='XXX.XXX.XXX…
#!/usr/bin/perl `find /bak/ >list.txt`; open LIST,"/root/list.txt"; while (<LIST>){ chomp; open TEST,"$_"; if ( -d TEST ){ close TEST; } else{ close TEST; $mtime= -M $_; if ($mtime > 60){ print "$_ old than 60 day!!\n&…
#!/usr/bin/perl use DBD::mysql; use strict; use warnings; use DBI; use utf8; binmode(STDOUT, ':encoding(utf8)'); binmode(STDIN, ':encoding(utf8)'); binmode(STDERR, ':encoding(utf8)'); use Time::Local; my $addtime=time(); my $dbh; ,,,,); sub getpid{ m…
当你在一个城市,穿越大街小巷,跑步跑了几千公里之后,一个显而易见的想法是,如果能把在这个城市的所有路线全部画出来,会是怎样的景象呢? 文章代码比较多,为了不吊人胃口,先看看最终效果,上到北七家,下到南三环,西到大望路,东到首都机场.二环32公里,三环50公里,这是极限,四环先暂时不考虑了.... (本文工程已经托管在Github,https://github.com/ferventdesert/gpx-crawler) 1.数据来源:益动GPS 首先需要原始位置信息,手机上有众多跑步软件,但它们…
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据进行拼凑,然后将拼凑后的数据用“|”连接在一起. 表格内容如下: 员工号码 员工姓名 职位 入职日期 1001 张三 销售 1980/12/17 0:00:00 1002 李四 财务 1981/02/20 0:00:00 1003 王五 经理 1981/02/22 0:00:00 1004 陈二 会计 1981/04/02 0:00:00 要求如下: 将员工姓名和入职日期用键值对的形式拼凑在一起,然后将拼凑后的数据用“|”连接在一起.…
在实际生产环境中,常常需要从后台日志中截取报文,报文的形式类似于 <InterBOSS> ... ... ... </InterBOSS> 一个后台日志有多个报文,每个报文可由操作流水唯一确定. 以前用AWK写过一个,程序如下: beginline=`awk 'BEGIN{i=0}{if($0~"<InterBOSS>") i=NR;if($0~"'$oprseq'"){print i;exit}}' $logname` endl…
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了一个表的数据量统计日报,主要是针对数据库中使用较频繁,数据量又较大的31张表.该日报有两个sheet组成,第一个sheet是数据填写,第二个sheet则是基于第一个sheet的数据进行的文字描述和图表展示. 文字描述主要包括两部分:一.呈现该31张表中数据量最大的9张表.呈现结果类似于:emp(约14万),dept(约100万)...当然,这个只是举例,为了避免引起不必要的麻烦(主要是企业信息安全方面的考虑),我这里不可能将具体日报的内容贴…
1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(<>){ chomp; print "$_\n" unless exists $hash{$_}; ; } 刚开始没有$hash{$_}+=1这一行,结果发现无论怎么执行,文本都是原样输出,不会去重.加上这一行后就没有问题了,推测如果没有对$hash{$_}进行操作的话,在判断完它的键是否存在以后即会被丢弃掉,不会保存留待下一次判断. 2. 如何输出中文 binmode(…
    在新的Linux Server(Red Hat Enterprise Linux Server release 5.7 (Tikanga))上配置磁盘空间告警的perl脚本后,测试时报如下错误 [oracle@DB-Server scripts]$ ./disk_capatiy_alarm.sh Can't locate Mail/Sender.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux…
在新装的Linux服务器上部署了一个作业监控磁盘空间并提前告警,在shell脚本里面调用了一个perl脚本发送告警邮件.结果出现了一个很奇怪的现象:如果手工执行该脚本/home/oracle/scripts/disk_capatiy_alarm.sh能发出告警邮件,但是在crontab里面发现脚本没有发出告警邮件.检查了/var/log/cron后发现该作业执行了.最后发现shell执行了,但是perl脚本没有执行.搜索了相关资料后,了解到一般出现这种情况要么是因为环境变量,要么是因为使用了相对…
perl调用shell命令 perl调用shell shell调用perl Perl执行shell命令的几种方式及其区别…
You can check if you have them installed in your machine with: > perl -e 1 -M<module> It will return an error message if it isn't installed. Use the commands below to check if they are installed: perl -e 1 -MBio::SeqIO perl -e 1 -MBio::AlignIO pe…
1.正则表达式作为一个匹配的模版,是由原子(普通字符,例如a-z),有特殊功能的字符(元字符,例如*.+ 和?等),以及模式修正符三个部分组成.2.在于Perl兼容的正则表达式函数中使用模式时一定要给模式加上定界符,即将模式包含再两个反斜线  /  之间 . 一.定界符再使用Perl兼容的正则表达式时,要将模式表达式放进定界符之间.作为定界符不仅仅局限使用"/",除了数字.字符.和反斜线\意外的任何字符都可以作为定界符号.不过通常都习惯讲模式表达式包含在两个斜线/之间. 二.原子原子是…
http://blog.sina.com.cn/s/blog_4af3f0d20100g9oz.html aaa@domain.com  2aaa@domain.com 111bbb@home.com   2222bbb@home.com   1 类似这种输出,我想把他们变换成下面形式: aaa@domain.com 113bbb@home.com 2223就是将相同邮箱名称后面的数字相加.各位大侠能否给些思路如何用perl来实现. 答案:perl -anle '$cnt{$F[0]}+=$F[…
1 如果是只有一个参数要传,且是hash,最直接想到的办法就是像传其他类型参数一样直接传, 如:   subFuntion(%hash1); 2 如果有多于一个参数要传,这里假设只有一个参数的类型是hash的,并把hash放到最前面, 如: subFuntion(%hash1, $var2); 这样做结果是错误的,结果是子函数把第2个参数$var2 合并到第一个hash上面去,不是你希望得到的 若把hash放在最后面的位置上,就可以了,代码如下: &subFuntion($var, %hash)…
项目里面一直用的是Perl,Perl里有各种小技巧就分享在这吧. push(@a, $b) 把b元素压入a数组中, 还可以有 push(@a, [@b]); 那a就成了二维数组了 scalar(@a); my $b = @a; a的长度 =~的正则匹配时 =~s///g全局替换 =//i匹配,$1,$2对应第一个,第二个捕获组 opendir readdir 遍历目录 my($sec,$min,$hour,$day,$mon,$year,$wday,$yday,$isdst)=localtime…
参考http://stackoverflow.com/questions/22934080/how-to-downgrade-to-perl-5-10-1 Perlbrew will allow you to install multiple versions of Perl as user installed Perls. 安装perlbrew apt-get install perlbrew To install a particular version of Perl: perlbrew…
(原文来自:http://www.jb51.net/shouce/perl.htm)…
#!/usr/bin/perl -w ; @array = split "", shift @ARGV; ..($#array+1)/2-1]; @array_2 = reverse @array[($#array+2)/2..$#array]; print "Array: @array\n"; print "@array_1\n"; print "@array_2\n"; 就是有一点,下标不好算!…
While trying to use a Nagios plugin I got an error saying that “Can’t locate utils.pm in @INC”. Following is complete error: Can’t locate utils.pm in @INC (@INC contains: /root /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/li…
Perl是高级.通用.直译式.动态的程序语言家族.最初设计者拉里·沃尔(Larry Wall)为了让在UNIX上进行报表处理的工作变得更方便,决定开发一个通用的脚本语言,而在1987年12月18日发表.目前,Perl语言家族包含两个分支Perl 5以及Perl 6(开发中). Perl借用了C.sed.awk.shell脚本以及很多其他编程语言的特性.其中最重要的特性是Perl内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN. Perl语言的中心思想可以集成为一句话"TMTOWTDI&…
#! /usr/bin/perl use strict; use Encode qw(encode decode); binmode(STDIN,":encoding(utf8)"); binmode(STDOUT,":encoding(utf8)"); binmode(STDERR,":encoding(utf8)"); use LWP::Simple; use LWP::UserAgent; use HTTP::Request; use HT…
#! /usr/bin/perl use strict; use Encode qw(encode decode); binmode(STDIN,":encoding(utf8)"); binmode(STDOUT,":encoding(utf8)"); binmode(STDERR,":encoding(utf8)"); use LWP::Simple; use LWP::UserAgent; use HTTP::Request; use HT…
当我们想使用某些Perl模块的时候,很可能会遇到当前系统不存在这个模块的情况,这时我们可以通过使用CPAN来对相应的模块进行获取,下面就介绍一下CPAN的使用方法.首先,我们可以用perl -e 'use module'这个命令来检查一下系统的perl的某个模块是否可用,如[root@localhost ~]# perl -e 'use Test::Parser'Can't locate Test/Parser.pm in @INC (......更多报错信息自动略过) at -e line 1…
继周六的p_enum.pl后,再来一篇说说我用perl做的lex,yacc工具.之前说了,我学习lex和yacc的最初动机是为了做个C语言解释器的SHELL:但后来工作中的实际需要也是制作perl版lex和yacc的一个动机.Perl库里有lex和yacc,我没研究过,想来应该比我做的强大,不过对新手来说,未必能容易入手. 我的第一个应用场景是做一个xml配置文件的排序.XML是标签标记语言,同一级下,TAG顺序本身是无所谓的:但对于测试工作来说,经常要通过文本比较工作来确定两个配置文件差别.如…