![](/img/trans.png)
[英]How to use grep in linux to find all files contain a specific command?
[英]How to use grep to find all files that contains two specific words?
我想找到所有同時具有patern1
和patern2
詞的文件(不是那些只包含其中一個或不包含它們的文件)。
我使用了以下內容,但它包括那些也只有兩個詞之一的詞:
grep -r "patern1|patern2" /path/to/directory
變體 1:
find . -type f -exec grep -q pattern1 {} \; -a -exec grep -q pattern2 {} \; -a -print
變體 2:
grep -rlZ pattern1 | xargs -r0 grep -l pattern2
您可以將此序列組合為任意數量的模式。 grep
的-Z
和xargs
的-0
需要處理帶空格的名稱。 如果 output 必須以 null 結尾,也將-Z
添加到最后一個grep
。
使用grep
grep -re 'pattern1.*pattern2' -e 'pattern2.*pattern1' /path/to/directory
我使用以下
grep -rnwi. -e "searchstring" | grep -v "exclude string"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.