仅输出所需的文本

时间:2017-03-07 12:40:00

标签: bash shell

我有一个文件:

$ cat file
.
.
4h
5h
6h
7h
.
.
.
16h
17h
18h
.
.

我想只输出具有'6h'和'7h'的行,但是使用下面的awk它还选择'16h'和'17h':(

awk'/ 6h / || / 7h / {print}'文件

如何在没有'16h'和'17h'的情况下选择'6h'和'7h'。 如果任何其他命令更容易完成工作,则AWK不是强制性的。

2 个答案:

答案 0 :(得分:3)

这个怎么样:

call_with_ref

答案 1 :(得分:-1)

使用grep完全匹配运算符:

grep -w "6h\|7h" file

从grep手册:

  

-w, - word-regexp

     

仅选择包含构成整个单词的匹配项的行。测试是匹配的子字符串必须位于行的开头,或者前面是非单词构成字符。同样,它必须位于行的末尾或后跟非单词构成字符。单词构成字符是字母,数字和下划线。