Provedl jsem vyhledávání pomocí grep
, ale nefunguje to, jak jsem očekával. V souboru mám následující řádky:
blacklists/redirector/domains:needyoutube.com
lacklists/redirector/domains:openyoutube.com
blacklists/redirector/domains:proxy-youtube.com
blacklists/redirector/domains:proxytoyoutube.com
blacklists/redirector/domains:streamyoutube.com
blacklists/redirector/domains:unblockyoutube.com
Když běžím:
grep ':youtube.com'
Nemám žádné výsledky. Následující funguje:
grep 'youtube.com'
Jak mohu uniknout dvojtečce (:
)? Zpětné lomítko (grep ‚\:youtube.com‘) nefunguje. Používám RHEL 5, grep (GNU grep) 2.5.1.
Aktualizace:
Zapomněl jsem položky, které jsem chtěl grep, existují také:
./blacklists/movies/domains:youtube.com
./blacklists/movies/domains:youtube.com.br
Chci jen získat pole, která obsahují přesný název domény. Takže chci, aby byly černé listiny propojeny s youtube.com, takže používám „:youtube.com“.
Z výše uvedeného seznamu (youtube.com, youtube.com.br) bych měl získat pouze youtube.com, ale nic se mi nezobrazuje.
Nebyl jsem dostatečně jasný, omlouvám se.
Přijatá odpověď:
Vypadá to, že „černé listiny/přesměrovač/domény“ je ve skutečnosti název souboru, nikoli část obsahu souboru. grep ':youtube.com'
funguje dobře:
% cat test.txt
./blacklists/movies/domains:youtube.com
./blacklists/movies/domains:youtube.com.br
blacklists/redirector/domains:needyoutube.com
lacklists/redirector/domains:openyoutube.com
blacklists/redirector/domains:proxy-youtube.com
blacklists/redirector/domains:proxytoyoutube.com
blacklists/redirector/domains:streamyoutube.com
blacklists/redirector/domains:unblockyoutube.com
% grep ':youtube.com' test.txt
./blacklists/movies/domains:youtube.com
./blacklists/movies/domains:youtube.com.br
Chcete-li rekurzivně najít řádky začínající na „youtube.com“, použijte grep -R '^youtube\.com' path/to/dir