linux - 如何从包含带连字符的短语集的文件中搜索确切的短语

标签 linux bash unix awk grep

我有文件,其中包含如下几个短语。我想从中找出完全匹配的内容。

file.txt

abc
abc-def
xyz
xyz-pqr
pqrs

如果我搜索“abc”,我只需要返回abc。 或者 如果我搜索“abc-def”,我只需要返回“abc-def

首选输出

$grep -w "abc" file.txt
abc

$grep -w "abc-def" file.txt
abc-def

以下方法对连字符不起作用

$grep -w abc file.txt 

最佳答案

对于给定的数据/文件,您可以使用 -x 标志。

grep -x abc file.txt

grep -x abc-def file.txt

  • -x, --line-regexp 强制 PATTERN 只匹配整行

  • -x 标志由 POSIX 定义/要求grep(1)

关于linux - 如何从包含带连字符的短语集的文件中搜索确切的短语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69937466/

相关文章:

bash - 如何在一个文件 linux 中提取所有命令历史记录

regex - 如何在 300GB .txt 文件上使用 awk 和 grep?

linux - 在 Linux 上,如何在忽略某些名称的同时递归复制文件?

linux - Mongodb 停止工作 : Aborted (core dumped)

linux - 使用 grep 匹配同一行上出现两个标记的位置

java - 在 linux 中查找路径条目

linux - 为什么sed会匹配组外的东西作为组的一部分?

linux - shell脚本中的命令是否等待前一个命令的执行完成?

linux - 如何在 CentOS 上启用 TCP MD5 签名

regex - sed 命令替换 php.ini memory_limit