-
强制Perl在以exec()结尾时调用END子例程?
所属栏目:[大数据] 日期:2020-12-16 热度:60
在Perl中使用 exec()时: Note that exec will not call your END blocks,nor will it invoke DESTROY methods on your objects. 如何强制perl调用END块?我可以做一些像END(); exec($0)还是其他什么? 我真的想让程序结束它的当前实例并启动一个全新的实例,[详细]
-
perl – $_与命名输入或循环参数有什么不同?
所属栏目:[大数据] 日期:2020-12-16 热度:75
因为我使用$_很多,我想更好地理解它的用法.就我所理解和使用它而言,$_是隐含值的全局变量. 因为$_似乎是设置的,除了可读性之外,有没有理由在$_上使用命名循环变量? 在什么情况下,重要的是_ _是一个全局变量? 所以,如果我使用 for (@array){ print $_;} 甚[详细]
-
如何将perl哈希转换为一系列标量变量?
所属栏目:[大数据] 日期:2020-12-16 热度:196
我从html表单获取输入.有一堆文本输入,因此有一堆键值对.当一个人有超过三对时,你会看到我现在的方法非常乏味.那,或者我只是懒惰. 我想知道,是否有更有效的方法将哈希转换为一系列标量变量?我希望密钥是变量名,设置为密钥的值. 我对perl比较新,对不起,如果[详细]
-
perl – 如何提高速度的通用例程?
所属栏目:[大数据] 日期:2020-12-16 热度:144
我需要一个有效的commify过滤器或例程来与Template :: Toolkit一起使用.它将在页面上多次使用.它应该支持小数. 这个是在The Perl Cookbook找到的: sub commify { my $text = reverse $_[0]; $text =~ s/(ddd)(?=d)(?!d*.)/$1,/g; return scalar rever[详细]
-
perl – 更改“for(keys%hash){}”循环中的键
所属栏目:[大数据] 日期:2020-12-16 热度:57
我记得有些事情没有改变 for my $key ( keys %hash ) { ... 例如 for my $key ( keys %hash ) { $key = "$key_x";} 但删除键和更改值将没有问题. 我的记忆好吗? 解决方法 我想你要记住的是,如果你这样做的话 for my $item (@array) { ...} 然后不允许在@arr[详细]
-
为什么在这个Perl示例中定义的sdf返回true?
所属栏目:[大数据] 日期:2020-12-16 热度:189
我在Perl中尝试过这个例子.有人可以解释为什么这是真的吗? if (defined sdf) { print "true"; } 它打印真实. sdf可以是任何名称. 另外,如果定义了sdf函数并且它返回0,则它不会打印任何内容. print(sdf);不打印sdf字符串但是 if (sdf eq "sdf"){ print "true[详细]
-
为什么’<'和'lt'运算符在Perl中返回不同的结果
所属栏目:[大数据] 日期:2020-12-16 热度:145
我只是在学习Perl的比较运算符.我尝试了以下代码: – $foo=291;$bar=30;if ($foo $bar) { print "$foo is less than $bar (first)n"; }if ($foo lt $bar) { print "$foo is less than $bar (second)n"; } 输出291小于30(秒).这是否意味着lt运算符总是将变[详细]
-
为什么我的Perl脚本在cron运行时无法加载模块?
所属栏目:[大数据] 日期:2020-12-16 热度:88
我有一堆Perl脚本都运行良好,但需要使用Plibdata;在顶部. 我设置了一个运行的cron作业(我从root获取确认电子邮件)并且它回吐了以下错误消息: Can't locate Plibdata.pm in @INC (@INC contains: /install/lib /opt/perl58/lib/5.8.8/IA64.ARCHREV_0-thread-[详细]
-
如何使用Perl的Getopt :: Long以用户输入的顺序获取选项?
所属栏目:[大数据] 日期:2020-12-16 热度:149
我有一个现有的Perl程序,它使用Getopt包和Getopt :: Long :: Configure with permute作为选项之一.但是,现在我需要保持用户输入的选项的顺序.在Long.pm中有一个选项$RETURN_IN_ORDER,但似乎根本没有在任何地方使用. 当我传递return_in_order时,我收到以下错[详细]
-
perl – 为什么我的子例程返回值没有分配给$_ default变量
所属栏目:[大数据] 日期:2020-12-16 热度:165
我有一个更新RSS提要的Perl子例程.我想测试返回的值,但是函数在很多地方使用,所以我只想测试默认变量$_,据我所知,如果没有指定变量,应该为指定的返回值. 代码有点太长而无法包含所有内容,但实质上它会执行以下操作 sub updateFeed { #.... if($error) { retu[详细]
-
这个perl正则表达式匹配什么?
所属栏目:[大数据] 日期:2020-12-16 热度:181
我已经开始学习正则表达式,但它有很多元素.它匹配什么? $x =~s/.?0+$//; 解决方法 它匹配零个或一个文字点,后跟一个或多个零,然后是字符串的结尾. . #A literal dot? #Zero or one of the previous character0+ #One or more zeros$ #End of string[详细]
-
perl – 删除包含特定字符的文件中的所有行
所属栏目:[大数据] 日期:2020-12-16 热度:147
我想删除具有特定字符的文件中的所有行/行,’?’在我的情况下.我希望在 Bash或AWK或Perl中有一个单行命令.谢谢 解决方法 这里已经是grep,sed和perl解决方案 – 仅用于有趣,纯粹的bash: pattern='?'while read linedo [[ "$line" =~ "$pattern" ]] || echo[详细]
-
Perl更改调用者的工作目录
所属栏目:[大数据] 日期:2020-12-16 热度:172
我想编写一个perl脚本,将其工作目录更改为其他地方,执行某些操作,然后在我从 shell调用它之后将其留在该目录中. chdir只做第一部分.如何更改呼叫者的工作目录? 解决方法 你想做什么是不可能的.最接近的是写一些bash来做你想要的,然后在调用shell中,来源而不[详细]
-
数组 – Perl中数组’一维’散列的优点
所属栏目:[大数据] 日期:2020-12-16 热度:188
我只是想知道在一维数组上使用一维散列(即只有键,没有值 – 我们不关心它们)的效率. 我想为此目的使用哈希的主要原因是我可以使用exists函数来查看“条目”是否已经存在.哈希也非常适合不重复密钥吗?对于数组,我需要设置我自己的涉及grep的检查,我认为这会[详细]
-
如何在Perl中将数字转换为英文形式?
所属栏目:[大数据] 日期:2020-12-16 热度:128
我需要一个Perl脚本,它将数字作为输入示例222 它应输出为二百二十二. 解决方法 使用 Lingua::EN::Numbers – 将“407”变成“四百七十”等. use Lingua::EN::Numbers qw(num2en num2en_ordinal); my $x = 234; my $y = 54; print "You have ",num2en($x)," t[详细]
-
使用Perl访问半百万页
所属栏目:[大数据] 日期:2020-12-16 热度:89
目前我正在使用Mechanize和get()方法来获取每个站点,并使用content()方法检查每个主页的内容. 我有一个非常快速的计算机10Mbit连接,但仍然需要9个小时来检查11K站点,这是不可接受的,问题是,get()函数的速度,显然,需要获取页面,是有什么方法可以让它更快,也许[详细]
-
这个Perl代码有什么作用?
所属栏目:[大数据] 日期:2020-12-16 热度:183
在cPanel中,它们告诉您将此代码插入Perl文件的开头.我不确定它是做什么的.我已经在文件的开头尝试了有和没有这个的代码,似乎所有工作都是一样的.我没有用cron运行代码来测试它,但只有我自己.通过“测试它”,我的意思是使用打印线,数据库连接和返回,潜艇,变量[详细]
-
如何使用Perl逐行读取CR-only文件?
所属栏目:[大数据] 日期:2020-12-16 热度:176
我正在尝试读取只有CR作为行分隔符的文件.我正在使用Mac OS X和Perl v.5.8.8.对于每种行分隔符(CR,LF,CRLF),此脚本应在每个平台上运行. 我目前的代码如下: open(FILE,"test.txt");while($record = FILE){ print $record;}close(TEST); 目前只打印最后一行([详细]
-
如何在Perl中优雅地从字符串中分割成对的单词?
所属栏目:[大数据] 日期:2020-12-16 热度:50
在perl中,我有一个粗略的字符串 my $str = "one 10 two 20 three 30"; 现在,我想将该字符串拆分为字数对,但有 没有成功. 我以为我能做到 my @pairs = split /([a-z]+[^a-z]+)/,$str; 然后会有 $pairs[0] eq 'one 10 '$pairs[1] eq 'two 20 '$pairs[2] eq 'th[详细]
-
如何在Perl中打印多维数组的一个数组?
所属栏目:[大数据] 日期:2020-12-16 热度:92
#!usr/bin/perl@array = ();open(myfile,"sometext.txt");while(myfile){ chomp; push(@array,[split(" ")]);}close(myfile);print @array[0]; 它不是在这个多维数组中打印第一个数组的元素,而是输出十六进制(?)指针引用.如果有人知道我如何打印这个数组,请[详细]
-
这个Perl布尔语法有什么问题?
所属栏目:[大数据] 日期:2020-12-16 热度:59
我有黑客需要在这些条件下使用: 这是数据的最后一页. 这也不是第一页. 没有页数大小甚至数量的数据项. 所以我尝试了这段代码: my $use_hack = $last_page_number == $current_page_number and $page_number != 1 and $total_items % $items_per_page != 0;[详细]
-
为什么Perl的autovivification在这种情况下有效?
所属栏目:[大数据] 日期:2020-12-16 热度:155
有人可以帮助我理解这个Perl程序的输出: use Data::Dumper;my %hash;$hash{hello} = "foo";$hash{hello}{world} = "bar";print $hash{hello} . "n";print $hash{hello}{world} . "n";print Dumper(%hash); 并输出: foobar$VAR1 = { 'hello' = 'foo' };[详细]
-
为什么在Perl的printf输出后得到一个尾随’1’?
所属栏目:[大数据] 日期:2020-12-16 热度:107
当我实现下面的代码时,我得到了正确的日期: 10/05/200810/05/2009 当我使用printf而不是sprintf时,我得到以下内容: 10/05/200910/05/200811 关于为什么printf打印尾随1的任何想法? #!/usr/bin/perluse strict; use warnings;my ($from_date,$to_date) = t[详细]
-
在Perl中是否存在非关系型DBI?
所属栏目:[大数据] 日期:2020-12-16 热度:167
Perl DBI模块允许我透明地连接到许多不同类型的SQL数据库.是否存在用于非关系键值对数据库的等效Perl模块? 例如,一个接口可能让我开始使用BerkeleyDB(甚至只是一个Perl哈希?),但切换到类似memcachedb或CouchDB,甚至像Amazon SinmpleDB或Google AppEngine D[详细]
-
如何从Perl脚本中的外部命令收集输出?
所属栏目:[大数据] 日期:2020-12-16 热度:124
我有一个名为TET.EXE的工具,它是PDFlib系列的产品,用于提取特定文本的坐标.在Perl脚本中使用这些坐标,我们可以提取所需的文本.这是一个手动进程来运行.EXE,然后将协调给Perl,所以任何人都可以建议我让整个过程动手. 我的意思是Perl脚本本身应运行.EXE并获取[详细]
