2017-04-11 68 views

回答

1

你也可以做到這一點用grep的-v選項是這樣的:

grep -rnwl '/home/rascalofthenorth/development/html/' -e "xc2" | grep -v "xbb"

-v選項只顯示結果不包含xbb

或爲要在其中,比如說,XC2出現,XBB不出現更具體的情況,然後AWK就派上用場了:

awk '/xc2/ && !/xbb/' <yourfile>

+0

謝謝這已經回答了我的問題。我會盡快接受答案。只是一件事|意味着管道是否正確?那麼這是否意味着'建立每個文件中包含「xc2」的列表,然後搜索該列表並刪除其中包含「xbb」的所有文件?或者還在發生其他事情? – rascalofthenorth

+0

@rascalofthenorth只是注意到使用正則表達式可能有隱藏的陷阱。例如,此解決方案將排除'\ xc2 \ xbb',但也會排除xb2是xcb的一部分的xc2xbb,xbbxc2,xbb和其他許多組合。您可能需要一個更復雜的正則表達式,而不是錯誤地排除可能需要返回的結果。 –

+0

謝謝George Vasiliou。在Praszyk提供的第二種解決方案中,說「xc2」和「xbb」是正則表達式的一小部分是否正確?第一個會grep -rnwl'/ home/rascalofthenorth/development/html /'-e「\ xc2」| grep -v「\ xc2 \ xbb」更正確嗎? – rascalofthenorth

相關問題