当行无休止地重复时,终止linux程序



我正在处理的一个财务处理程序,cruncher.js,有一些烦人的错误很难解决。一个常见的问题(其触发输入很难指向并因此避免(导致了这种故障场景:

Downloading account information...
Downloading today orders...
Downloading historical quotes...
Downloading historical quotes...
Downloading historical quotes...
Downloading historical quotes...

一旦"下载历史报价…">这行重复第三次,我知道它进入了一个无限循环,永远不会退出,也不会跳过它无法优雅处理的任何输入情况。

我如何将这个cruncher.js程序管道传输到|awk,即哪个内联awk脚本会在其输入中检测到第三行(如果更容易的话,是第二行(连续重复的行,并在那里终止?

或者可以使用其他常见的Linux/shell工具来代替awk?

这里有一种方法

$ yes | awk -v key='y' '{if($0==key)c++; else c=0} c==3{exit}1' 
y
y

将键值替换为重复值;和CCD_ 1。

最新更新