2013-10-24 83 views
6

如何显示只有结束确定的所有作业?仅显示与GREP完全匹配

当我尝试下面的命令,它表明双方确定,NOTOK因为两者具有“OK”

ctmpsm -listall application | grep OK 

回答

21

您需要更具体的表达。试试grep " OK$"grep "[0-9]* OK"。你想选择一种符合你想要的模式,但不符合你不想要的模式。该模式将取决于您的整个文件内容可能是什么样子。

您也可以:grep -w "OK"它只会匹配整个单词“OK”,如“1 OK”,但不会匹配“1OK”或“OKFINE”。

$ cat test.txt | grep -w "OK" 
1 OK 
2 OK 
4 OK 
+0

这工作得很好..但现在我试着用其他命令,如'ctmpsm -listall application | grep -w“ABCD123”'有行显示'ABCD123'和'ABCD123 @',但我只想'ABCD123' – aftermath

+0

'ABCD123'后面有什么*?刚刚结束?空间?标签?可能有这些吗? – lurker

+0

none ..如果文件后面没有任何东西(它在行尾),那么只有'ABCD123'应该显示 – aftermath

6

这可能会为你工作

​​
+0

你可以在这里解释正则表达式吗? – Zypps987

-1

尝试下面的命令,因为它完美的作品:

grep -ow "yourstring" 

crosscheck:- 

删除实例来自文件的单词,然后重新执行此com并且它应该显示空的结果。

+0

Downvote:'-o'不相关,而'-w'已经在最高票数的答案中提供了。 – tripleee

0

这为我工作

grep "\bsearch_word\b" text_file > output.txt ## \b indicates boundaries. This is much faster. 

,或者

grep -w "search_word" text_file > output.txt 
0

试试这个: 的grep -P '^(tomcat的!?)' tst1.txt

它将搜索txt文件中的特定单词。在这里,我们试图搜索词'tomcat'

+0

嗨欢迎堆栈溢出。请编辑您的答案,以便反映所问的问题,即如何从NOTOK中提​​取OK。谢谢 – Spangen