我正在编写一个程序,从IDS系统读取规则和日志文件。 我在Perl中使用File :: Tail函数 无法弄清楚如何使用它。 下面是我的一些例子...如何使用File :: Tail从同一目录中读取多个文件?
例1
#!/usr/local/bin/perl
use Fail::tail;
opendir RUL, "/etc/snort/rules" || die "Could not open RUL directory\n $!";
my @allrule = grep {/.rules$/} readdir RUL;
close RUL;
foreach my $rulefile (@allrule)
{
open(LF, "/etc/snort/rules/$rulefile") or die "$!";
while(<LF>)
print "$\n";
}
这个例子我能打印我的终端上的所有规则... 如何更改使用文件中的规则::尾巴功能,甚至将所有规则写入一个新文件?
我尝试这样做:
Example 2
#!/user/local/bin/perl
.
.
.
foreach my $rulefile(@allfule)
{
$file = File::Tail->new("/etc/snort/rules/$rulefile");
while (defined(my $line = $file -> read))
{
print $line;
}
}
实施例2将不会运行。 任何人有任何想法,为什么它不运行?
我假设你真的是'文件:: Tail',而不是'失败:: tail'。 – toolic 2011-03-21 16:39:02
你是什么意思的“不会运行”?究竟它是如何失败?你是否收到错误信息? – outis 2011-03-21 18:07:04
得到什么......像程序正在运行,但第n打印出来,并没有退出... – terrance 2011-03-21 18:56:01