查找文件中按顺序包含所有四个小写字母“inux”的所有单词

查找文件中按顺序包含所有四个小写字母“inux”的所有单词

这四个字母应按字母顺序排列。例如,inuxianauax位于输出中,但ixnuxnaiauax不在输出中。

我只能用它grep 来完成这个任务。

我尝试过grep 'i\w*n\w*u\w*x\w*',但失败了,因为ixnux它在输出中,但它不应该在输出中(ixnux不是“i”、“n”、“u”、“x”按字母顺序排列的单词)

答案1

另一种grep方法。

grep '[^nux]*i[^iux]*n[^inx]*u[^unu]*x' infile

答案2

grep解决方案:

s="inux and ianauax are in the output, but ixnux and naiauax are not."
grep -o '\b[a-h0-9_]*i[a-l0-9_]*n[a-t0-9_]*u[a-y0-9_]*x\w*\b' <<<"$s"

输出:

inux
ianauax

相关内容