gpt4 book ai didi

linux - 使用 grep 精确匹配单词

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:32:31 24 4
gpt4 key购买 nike

我在file.txt中有如下数据

BRAD CHICAGO|NORTH SAMSONCHESTER|
CORA|NEW ERICA|
CAMP LOGAN|KINGBERG|
NCHICAGOS|ESTING|
CHICAGO|MANKING|
OCREAN|CHICAGO|
CHICAGO PIT|BULL|
CHICAGO |NEWYORK|

问题一:我想在第一列中搜索单词“CHICAGO”的完全匹配项并打印第二列。输出应如下所示:

MANKING
NEWYORK

问题二:如果找到多个匹配项,那么我们可以将输出限制为只有一个吗?这样输出就只有 MANKING 或 NEWYORK

我在下面试过

grep -E -i "^CHICAGO" file.txt | awk -F '|' '{print $2}'

但是我的输出低于

MANKING
BULL
NEWYORK

问题 1 的预期输出:

MANKING
NEWYORK

问题 2 的预期输出:

MANKING

最佳答案

还有一些方法:

使用grepcut:

grep "^CHICAGO|" file.txt | cut -d'|' -f2

使用awk

awk -F"|" '/^CHICAGO\|/{print $2}' file.txt

对于问题 2,只需将其通过管道传递到头部即可,即:

grep "^CHICAGO|" file.txt | cut -d'|' -f2 | head -n1

awk 命令类似。

关于linux - 使用 grep 精确匹配单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57579931/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com