草庐IT

language-perl

全部标签

windows - Perl Windows IPv6

我有一个使用TCP/IP套接字的Perl/Windows应用程序,我需要添加IPv6支持。我有一台运行IPv6的Windows764位机器,带有HurricaneElectric隧道,它在http://test-ipv6.com/上获得10分(满分10分)并将访问仅支持IPv6的站点,例如http://loopsofzen.co.uk/.它有ActivePerl5.14.2(我也试过StrawberryPerl5.16.0.1)。这是一个简单的测试脚本:useSocketqw(getaddrinfo);$host='loopsofzen.co.uk';$port=80;$hints=(

windows - Windows 上带有 perl 的 IPv6 无法正常工作

交叉发布http://perlmonks.org/index.pl?node_id=984750(可能与perlwindowsIPv6重复)我尝试了以下示例示例:https://metacpan.org/module/IO::Socket::IPuseIO::Socket::IP-register;my$sock=IO::Socket->new(Domain=>PF_INET6,LocalHost=>"::1",Listen=>1,)ordie"Cannotcreatesocket-$@\n";print"Createdasocketoftype".ref($sock)."\n";输出

windows - Windows 与 Linux/UNIX 中 Perl 的 waitpid() 和 IPC::Open2

下面的代码在Linux上运行完美,但是当我把它放在Windows机器上时,一切都乱套了:$pid=open2($my_reader,$my_writer,"$JAVACALL$PARSER_CP$PARSER_CMD-");$my_reader->autoflush(1);$my_writer->autoflush(1);print$my_writer"$line\n";close($my_writer);my$tree=;chomp($tree);push@parse_trees,$tree;close($my_reader);waitpid($pid,0);在Windows中,它只

windows - 调用 ssh2 命令的 Perl 脚本无法在 Windows 任务计划程序中取回输出

我可以毫无问题地从命令行运行Perl脚本,但是当我尝试使用Windows任务管理器(64位Windows2008Server)自动执行此任务时,SSH/SSH2的输出无法写入输出文件。它是一个perl脚本,它执行如下操作:my$DB_FILE1=$PATH."\\FSBusinessUtil_".$hostfqdn.$DATE;open(OUTFILE,">$DB_FILE1")ordie"Couldnotopendatafile";printOUTFILE"FilesystemInfo\n";my$output1=`$SSH_PATH\\ssh$user\@$hostnameNAS_

windows - 为什么 perl testing dir -d ""在 Windows 上返回 true?错误与否?

对于在Windows上测试空格字符串目录时perl返回true有什么解释吗?在Windows7上运行:perl-e"printqq{found\n}if-dqq{}"你会得到输出:found但相同的perl代码在Linux上返回false。在Windows上的perl5.8和strawberryperl5.18上测试这是一个错误还是有一个非常规的推理? 最佳答案 在Windows下,任何在内部尝试测试文件或目录是否存在的perl操作都使用Win32函数CreateFile。在Windows下,以空格结尾的文件名是不合法的(尽管没有明

windows - Perl 脚本无故挂起

所以我有这个小脚本,它检查两个日志文件中的特定行并比较这些行。该脚本用于多个不同的WindowsBamboo代理。但是在其中一个它只是挂起并且不会退出。由于该脚本在bamboo中使用,因此当该脚本不退出时,整个作业都会挂起。当我通过远程访问检查计算机并终止脚本时,作业会继续,直到它再次到达脚本。这是脚本,由另一个脚本启动。#!/usr/bin/perlmy$naluresult=2;my$hevcresult=2;my$hevcfailed=0;usestrict;usewarnings;#---------------------------------------------#ch

windows - 为什么 perl 看不到 Windows 中存在的文件?

在我同事的一台机器上,如果你只是寻找java,你可以找到它:c:\>wherejavaC:\Windows\system32\java.exe但是,如果我用perl做这个测试:c:\>perl-e"print(-e'c:\\windows\\system32\\java.exe'?'found':'notfound')"notfound(这在我的机器上运行良好)。我听说过某种奇怪的缓存,文件会在其中进行假安装,因此它们可以正常工作,但我不知道它可以被称为什么,而且我在google上搜索也没有任何帮助。 最佳答案 正如AndrewMe

windows - 将备份文件保存到 Perl 就地编辑中的自定义目录

我已经有一个perl文件changes.pl。我可以通过cmd命令运行changes.pl。我正在寻找将备份文件保存到特定目录的方法。我试过使用cmd命令1和2。但是,我从运行两者中的任何一个得到结果。changes.plBEGIN{@ARGV=mapglob("\"$_\""),@ARGV;}s/a/b/g;s/c/d/g;s/e/f/g;cmd命令perl-i.bak-pchanges.plMy/Files/Directory/*.txtcmd命令1perl-i"save/*"-pchanges.plMy/Files/Directory/*.txtcmd命令2perl-i.bak-

windows - 为什么 Perl 应用程序 'prove' 并行启动我的脚本但不并行执行这些脚本中的测试用例?

我有几个.t文件夹中的文件。每个测试脚本都会启动自己的Selenium实例,因此会打开自己的浏览器。然后它们将它们的指令传递给单独模块中的页面对象。唉,页面对象是大多数测试断言发生的地方。我使用prove-j2testfolder并行运行它们.当我这样做时,我看到两个浏览器打开,响应Selenium调用,但测试结果和浏览器操作表明第二个脚本仅在第一个脚本第一次调用Test::More之前运行。,然后它会挂起,直到第一个脚本完成。页面对象模型是一个转移注意力的问题。我试过只裸露pass()在每个.t的顶部调用文件并确认在整个第一个脚本完成之前不会尝试第二个脚本中的测试用例。每个testX

windows - 草莓 Perl : forgets environment variables?

我已经在WindowsXP上运行的StrawberryPerl中安装了许多模块,例如:正则表达式::通用URI::Find::Schemeless在安装每个模块后,这些库在我的perl代码中第一次运行良好。问题是,接下来的每一天,我运行我的脚本都会失败,并出现以下错误:Can'tlocateRegexp/Common.pmin@INC(@INCcontains:C:/strawberry/perl/libC:/strawberry/perl/site/libC:\strawberry\perl\vendor\lib.)我已将所有适当的路径放入Windows的环境变量中:PERL5LIB