有人可以帮助我如何使用 Grep cmd 来获取特定输出。
我的cmd --------
ps -aef | grep gen | grep -v grep
cor 3957 1 0 Mar01 ? 02:04:07 gen nam=RS grp=81
mre 103189 1 1 Feb22 ? 16:16:37 gen nam=AB grp=05
cor 169727 169668 0 Apr11 pts/1 00:01:27 gen
我只想要以“gen”结尾的第三行的输出。我不想在第 8 列之后的 grep 中出现任何数据。
“我只想要以 'gen' 结尾的第三行的输出。我不想在第 8 列之后的 grep 中出现任何数据。”
如果您只需要第三行的输出,请使用
awk 'NR==3'
。如果您想要第 8 列为“gen”的所有行,请使用 awk '$8 == "gen"'
。如果您只想要第 8 列为“gen”的行的前 8 列,请使用:
awk '$8 == "gen"{ for(i=9; i <= NF; i++) $i=""; print}'