我有一個檔案,它由以下幾個短語組成。我想從它們中grep精確匹配。
檔案.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
uj5u.com熱心網友回復:
使用給定的資料/檔案,您可以使用該-x標志。
grep -x abc file.txt
grep -x abc-def file.txt
-x, --line-regexp 強制 PATTERN 只匹配整行
該
-x標志由POSIXgrep(1)定義/要求
uj5u.com熱心網友回復:
為了匹配整行,您需要匹配行的開頭和結尾:
grep '^abc$' file.txt
grep '^abc-def$' file.txt
uj5u.com熱心網友回復:
你可以這樣使用awk:
awk -v w="abc" '$1==w' file.txt
abc
或者,
awk '$1==w' w="abc" file.txt
使用==運算子,它只回傳精確的字串匹配。我們正在設定w="abc"與-v開關或通過標準輸入匹配的內容。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/357973.html
