javascript

java

python

c#

android

node.js

c++

reactjs

php

html

jquery

css

.net

ios

git

ruby-on-rails

sql

c

string

ruby

macos-如何在Mac OS X上运行Perl脚本?

如何在OS X上运行Perl脚本?

老实说,我在任何地方都找不到答案! 大概我必须在终端中运行命令,但是呢?

(我知道这是一个真正的基本和愚蠢的问题)

trans by 2020-02-20T05:32:05Z

python-最坏情况的正则表达式分析

就正则表达式要匹配的一定数量的字符而言,是否有任何工具会采用特定的正则表达式并返回最坏情况?

因此,例如,给定(f|a)oo.*[ ]baz,引擎可能要经过多少步才能匹配100个字符?

如果有一种工具可以提取大量文本样本并显示每次运行的平均操作,我也将感兴趣。

我意识到这将在很大程度上取决于所使用的引擎和实现-但是我不知道这有多普遍。 因此,如果许多语言都通用(使我的问题变得含糊不清),我将对Perl和Python特别感兴趣。

trans by 2020-02-20T03:35:26Z

保持Perl内存使用量的提示

在Perl脚本中保持较低内存使用的一些好技巧是什么? 我对学习如何使依赖Perl程序的系统的内存占用量尽可能低感到兴趣。 我知道Perl在内存使用方面不是很好,但是我想知道是否有任何改进技巧。

因此,如何做才能使Perl脚本使用更少的内存。 我对任何建议都感兴趣,无论它们是编写代码的实际技巧,还是有关如何以不同方式编译Perl的技巧。

编辑赏金:我有一个perl程序,可作为网络应用程序的服务器。 当前连接到它的每个客户端都有它自己的子进程。 我也使用了线程而不是fork,但是我无法确定使用线程代替fork实际上是否更有效地利用内存。

我想尝试再次使用线程而不是派生。 我相信从理论上讲,它应该可以节省内存使用量。 在这方面,我有几个问题:

  1. 在Perl中创建的线程是否防止复制Perl模块库进入每个线程的内存?
  2. 线程(使用线程)是最有效的方法(还是唯一的方法)在Perl中创建线程的方法?
  3. 在线程中,我可以指定一个堆栈大小参数,具体来说指定此值时应考虑什么,以及它如何影响内存使用情况?

对于Perl / Linux中的线程,确定每个线程的实际内存使用量的最可靠方法是什么?

trans by 2020-02-19T21:03:06Z

在Perl中将文件包含到字符串中的最佳方法是什么?

是的,要做的事情不止一种,但是必须有一种规范的,最有效的或最简洁的方法。 我将添加我所知道的答案,并查看渗入顶部的内容。

明确地说,问题是如何最好地将文件的内容读取为字符串。每个答案一个解决方案。

trans by 2020-02-15T07:49:44Z

如何检查Perl脚本是否没有任何编译错误?

我在Bash脚本中调用了许多Perl脚本(有时也从csh中调用)。

在Bash脚本的开始,我想进行一个测试,检查所有Perl脚本是否没有编译错误。

一种方法是从Bash脚本中实际调用Perl脚本,并在管道日志文件中为grep调用“编译错误”,但这变得混乱,因为在代码的不同点调用了不同的Perl脚本,所以我想 在Bash脚本的开始就可以做到这一点。

有没有办法检查Perl脚本是否没有编译错误?

trans by 2020-02-15T00:26:47Z

perl-“设备不适当的ioctl”

我在AIX框中运行一个Perl脚本。

该脚本尝试从某个目录打开文件,但由于文件没有读取权限,因此无法读取该文件,但是出现了另一个错误,提示strace

它不应该说strace之类的字吗?

strace消息是什么意思?

我该如何解决?

编辑:这是我做strace时发现的。

open("/local/logs/xxx/xxxxServer.log", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 
    0666) = 4 _llseek(4, 0, [77146], SEEK_END) = 0
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbffc14f8) = -1 ENOTTY 
    (Inappropriate ioctl for  device)
trans by 2020-02-14T10:20:37Z

子类-Perl 5中的parent和base有什么区别?

似乎有一个名为parent的新实用程序,其功能与parent大致相同。parent需要做什么才能保证新的(非核心)模块? 我想念什么吗?

trans by 2020-02-13T22:56:30Z

什么时候应该使用&调用Perl子例程?

我听说人们不应该使用&来调用Perl订阅,即:

function($a,$b,...);
# opposed to
&function($a,$b,...);

我知道其中一个参数列表是可选的,但是在什么情况下适合使用&和在某些情况下您绝对不应该使用它呢?

另外,当省略&时,如何提高性能呢?

trans by 2020-02-12T10:21:05Z

我的Perl脚本如何在同一目录中找到其模块?

我最近写了一个新的Perl脚本,用于根据进程名称/用户名杀死进程,并使用类对其进行了扩展,以便可以在其他程序中重用该进程代码。 我当前的布局是-

/home/mutew/src/prod/pskill       <-- Perl script
/home/mutew/src/prod/Process.pm   <-- Package to handle process descriptions

我在$ PATH变量中添加了〜/ src / prod以从任何地方访问脚本。 从驻留目录以外的任何目录运行脚本时,都会导致“无法在@INC中找到Process.pm”(这是可以理解的,因为/ usr中的共享目录除外,@ INC仅包含当前目录- '。')。 我一直在使用的一种解决方法是use lib指令-

use lib '/home/mutew/src/prod';

但这是一个主要的可移植性问题。 有什么解决方案还可以使我无需更改而将脚本导出到其他系统?


编辑

  1. 我选择“ depesz”作为正确的答案是因为它的简单性和核心模块的用法。
  2. 布赖恩·德·福伊的答案虽然暗示了其他方法来完成同样的任务(TMTOWTDI),但他在perlfaq8中的贡献使这个问题绝对多余。
trans by 2020-02-10T22:02:57Z

if语句-Perl条件语句中“ if”与“ unless”的用法

在Perl代码中最佳使用ifunless的一些准则是什么? 在某些情况下,是否有充分的理由偏爱另一个?

trans by 2020-02-07T21:13:30Z

regex-如何在Perl中替换现有文件中的字符串?

我想在名为1_classification.dat,2_classification.dat等的所有文本文件中将单词“ blue”替换为“ red”。 我想编辑相同的文件,所以尝试了此代码,但是它不起作用。 我要去哪里错了?

@files=glob("*_classification.dat");
foreach my $file (@files)
{
    open(IN,$file) or die $!;
    <IN>;
    while(<IN>)
    {
       $_='~s/blue/red/g';
       print IN $file;
    }

   close(IN)
}
trans by 2020-02-03T20:57:51Z

如何在Perl中找到用户的主目录?

我需要检查用户主目录中是否存在文件,因此请使用文件检查:

if ( -e "~/foo.txt" ) {
   print "yes, it exists!" ;
}

即使用户的主目录下有一个名为foo.txt的文件,Perl始终抱怨没有这样的文件或目录。 当我用/ home / jimmy代替“〜”(假设用户是jimmy)时,Perl给出正确的结论。

您能否解释一下为什么“〜”在Perl中不起作用,并告诉我Perl的处理方式查找用户的主目录?

trans by 2020-02-02T04:59:08Z

正则表达式-Perl正则表达式是否完整?

我已经看到Ruby和Perl程序员完全使用正则表达式来完成一些复杂的代码挑战。 Perl regexes的先行和后备功能使其比大多数其他语言的regex实现更强大。 我想知道它们到底有多强大。

有没有简单的方法来证明或反对Perl正则表达式是否已经完成Turing?

trans by 2020-01-30T23:17:07Z

如何在Perl中获取字符串的长度?

strlen()的Perl等价于什么?

trans by 2020-01-29T07:07:00Z

在Perl中,是否有内置的方法可以比较两个数组是否相等?

我有两个字符串数组,我想比较它们是否相等:

my @array1 = ("part1", "part2", "part3", "part4");
my @array2 = ("part1", "PART2", "part3", "part4");

是否有内置的方法可以像比较标量那样比较数组?我试过了:

if (@array1 == @array2) {...}

但是它只是在标量上下文中评估了每个数组,因此比较了每个数组的长度。

我可以滚动自己的函数来执行此操作,但是似乎是一个低级操作,应该有内置的方法来执行。 在那儿?

编辑:可悲的是,我无权访问5.10+或可选组件。

trans by 2020-01-28T18:03:36Z

换行符-删除P中换行符的最巧妙方法

我正在维护一个脚本,该脚本可以从各种来源获取输入,并且可以每行对其进行处理。 根据实际使用的来源,换行符可能是Unix风格,Windows风格,甚至对于某些聚合输入而言,还可能是mix(!)。

从文件读取时,它会显示以下内容:

@lines = <IN>;
process(\@lines);

...

sub process {
    @lines = shift;
    foreach my $line (@{$lines}) {
        chomp $line;
        #Handle line by line
    }
}

因此,我需要做的是用消除Unix风格或Windows风格的换行符的方式替换chomp。我想出了太多的方法来解决这个问题,这是Perl的通常缺点之一:)

您对切断通用换行符的最简洁方法有何看法? 什么是最有效的?

编辑:简要说明-方法“进程”从某处获取行列表,而不是从文件中读取。 每行可能有

  • 没有尾随的换行符
  • Unix风格的换行符
  • Windows风格的换行符
  • Just Carriage-Return(当原始数据具有Windows样式的换行符并以$ / ='\ n'读取时)
  • 线条不同样式的集合集
trans by 2020-01-28T13:13:09Z

python是否有一个“严格使用”; 和“使用警告”; 像在perl中一样?

我正在同时学习perl和python ...,不是我设计的,而是必须完成的。

题:

在Perl脚本中,我使用txt开头的内容(请参见下文)。

#!/usr/bin/env perl

use strict;
use warnings;

我的python脚本例程应该做些什么吗?

trans by 2020-01-27T07:10:37Z

如何使用Perl列出目录中的所有文件?

这个问题已经在这里有了答案:

  • 如何在Perl中读取目录的内容?                                     8个答案

Perl中是否有一个功能可以列出目录中的所有文件和目录?我记得Java有File.list()吗? Perl中有类似的方法吗?

trans by 2020-01-25T10:06:51Z

在Perl中,使用模块比需要文件更好吗?

另一个问题让我开始思考不同的代码重用方法:require "file.pl"require "file.pl"do

我在这里看到很多帖子,问题集中在使用require "file.pl"加载和执行代码方面。 在我看来,这显然是一种不好的做法,但是我没有找到任何可以指导人们的好的资源。

perlfaq8涵盖了require "file.pl"require "file.pl"之间的区别,但是它没有提供有关偏好的任何建议(从5.10版本开始,在5.8.8版本中,有一些建议优先使用)。

这个话题似乎缺乏讨论。 我想讨论几个问题:

  1. Perl中首选的代码重用方法是什么?
    • require "file.pl"
    • require "file.pl"
    • require "file.pl"
    • require "file.pl"
  2. require "file.pl"require "file.pl"有什么区别?
  3. 使用require "file.pl"是个好主意吗? 为什么或者为什么不?
trans by 2020-01-25T09:11:02Z

如何在不是@INC的目录中“使用” Perl模块?

我的脚本的父目录中有一个模块,我想“使用”它。

如果我做

use '../Foo.pm';

我收到语法错误。

我试着做:

push @INC, '..';
use EPMS;

和..显然没有出现在@INC中

我要疯了! 怎么了

trans by 2020-01-24T21:56:10Z

1 2 3 4 5 6 7 8 下一页 共8页