我是Perl的初学者,我必须创建一个.pl
文件,我的文件夹包含大约30个exe文件(在G:\ Folder1中的Folder1内)。必须通过单击.pl
文件执行所有这些操作。
我的尝试是:
use strict; use warnings;
use autodie; # automatic error handling
while (defined(my $file = glob 'C:\shekhar_Axestrack_Intern*.exe'))
{
open my $fh, "<", $file; # lexical file handles, automatic error handling
while (defined( my $line = <$fh> )) {
do system $fh ;
}
close $fh;
}
如果我的逻辑正确,请告诉我?如果我错了,有人可以纠正我吗?
答案 0 :(得分:1)
我认为pl2bat可能会对您有所帮助。它允许您将Perl代码包装到批处理文件中。
BTW为什么在Perl脚本中使用echo
?您应该使用print
。
修改:您已编辑过问题,现在您想知道如何使用Perl从文件夹中运行所有exe
个文件?
使用system
命令运行提供完整路径的exe文件。
请参阅:How to run an executable file using Perl on Windows XP?
编辑2: do system $fh ;
这不是你怎么做的,请拿一本书(我建议由Ovid开始Perl)并开始学习Perl。
答案 1 :(得分:1)
使用system
执行exe:
while (my $file = glob 'C:\shekhar_Axestrack_Intern\*.exe') {
system $file;
}
另外,我觉得你打算写C:\ shekhar_Axestrack_Intern * .exe&#39; 而不是&#39; C:\ shekhar_Axestrack_Intern * .exe&#39;。