只对首次出现的模式执行AWK操作?

时间:2014-04-16 09:45:21

标签: regex bash awk

我有一些代码,如下所示。问题是,我正在使用的模式有多次出现。我想知道是否有任何方法可以让awk仅在模式的第一次出现时执行,这样它就不会在文件中重复了?

感谢任何帮助

由于

for Server in $Serverlist; do

                    f2="$(<$1)"
                    awk -vf2="$f2" '/Server N.*1p/{print f2;print;next}1' $Server > tmp
                    mv tmp $Server
    done

1 个答案:

答案 0 :(得分:2)

awk -vf2="$f2" '/Server N.*1p/ && !seen {print f2;print;seen=1}1' $Server > tmp

将是最简单的方式。

相关问题