Perl - 需要反复调用系统('diff')

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Perl - 需要反复调用系统('diff')相关的知识,希望对你有一定的参考价值。

我有一个批处理系统,需要一遍又一遍地运行相同的shell命令。

while (x)
{
  if (y)
  {
    $diff = `diff $f1 $f2`;
    ...
  }
  else
  {
    ...
...

这有点慢,所以我想知道是否有某种方法使shell或程序持久(或某些东西),以至于它每次都没有很大的开销。

请注意,我不能真正考虑编写自己的diff函数,因为实际输出需要看起来像它来自该程序。

提前致谢!

答案

我想知道是否有一些方法可以使shell或程序持久化(或某些东西),使其每次都没有很大的开销。

并不是的。 diff本质上是一种一次性工具;它没有任何持久模式。

不过,你可能想看看的是Text::Diff模块。它可以以与diff实用程序相同的格式生成输出。

以上是关于Perl - 需要反复调用系统('diff')的主要内容,如果未能解决你的问题,请参考以下文章

perl 系统调用无法识别路径

尝试diff'[object Object]'时出错。当我调用get时,只允许数组和迭代

Perl中的反斜杠单引号

jquery checkbox反复调用attr('checked', true/false)只有第一次生效

如何在 Perl 中自动化一系列测试?

Perl基础速成