2015-07-11 180 views
0

我想使字符串/etc的精確搜索,在接下來的文件:grep的精確匹配「/等」

-14: _etcrpm /etc/rpm 
    -14: _nssdb_path  /etc/pki/nssdb 
    -14: _rpmds_ldconfig_cache  /etc/ld.so.cache 
    -14: _sysconfdir  /etc 
    -DKDE_DISTRIBUTION_TEXT="%(cat /etc/mandriva-release)" \ 
    -14: distepoch %(sed -e 's#.*release\ \(\S*\).*#\1#' /etc/release) 
    -14: distro_class  %(. /etc/sysconfig/system; echo $META_CLASS) 

我想,在grep的輸出,顯示包含行只有 「/等」

-14: _sysconfdir  /etc 

有人可以幫我嗎?

謝謝

+0

請註明你有什麼到目前爲止已經試過和你被卡住的位置。 –

回答

1

這應該工作:

grep -P "(?<=\s)/etc(?=\s|$)" file 

或者:

grep -E "\s/etc(\s|$)" file 

或者:

grep "[[:space:]]/etc\([[:space:]]\|$\)" file 

輸出:

-14: _sysconfdir  /etc 

-P是Perl正則表達式。
-E是擴展正則表達式。

0

在這種情況下,你可以使用awk來檢查,如果最後一個字是「/等」

awk '$NF == "/etc" file