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

时间:2019-04-20 18:23:45

标签: perl system diff

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

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

这有点慢,所以我想知道是否有某种方法可以使外壳或程序具有持久性(或其他),以免每次都没有很大的开销。

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

谢谢!

1 个答案:

答案 0 :(得分:6)

  

我想知道是否有某种方法可以使Shell或程序具有持久性(或其他),以免每次都没有很大的开销。

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

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