【发布时间】:2013-10-10 02:12:56
【问题描述】:
我有一个 Perlscript,它会解析一些日志文件,有时还会执行一个 bash 命令:
$messagePath = `ls -t -d -1 $dir | head -n 5 | xargs grep -l "$messageSearchString"\`;
我这样开始我的 perl 脚本./perlscript.pl > logfile.log。
现在我在日志文件上做一个尾巴来观察进度,但是每次输出都会卡在我上面描述的那一行。 输出将在那里停止几秒钟,然后继续。 ???
为了描述我这样包装的问题:
print `date`;
$messagePath = `ls -t -d -1 $dir | head -n 5 | xargs grep -l "$messageSearchString"`;
print `date`;
输出显示该命令并没有消耗很多时间:
So 6. Okt 22:35:04 CEST 2013
So 6. Okt 22:35:04 CEST 2013
如果我在不将输出重定向到文件的情况下运行脚本,则没有 LAG。
知道为什么吗?
【问题讨论】:
-
1) 编程问题不在此处讨论,您可以将它们发布到 Super User,或者对于常见的 *nix 脚本语言,如 Perl,发布到 Unix & Linux 2) Never parse the output of
ls。