unix - varias - Grep para cadenas literales
usar grep para buscar archivos (5)
Eso es fgrep
o grep -F
que no hará expresiones regulares. fgrep
es idéntico a grep -F
pero prefiero no tener que preocuparme por los argumentos, siendo intrínsecamente flojo :-)
grep -> grep
fgrep -> grep -F (fixed)
egrep -> grep -E (extended)
rgrep -> grep -r (recursive, on platforms that support it).
Busco una herramienta tipo grep para buscar cadenas puramente literales. Estoy buscando la aparición de una línea de un archivo de registro, como parte de una línea en un archivo de registro independiente. El texto de búsqueda puede contener todo tipo de caracteres especiales de expresiones regulares, por ejemplo, []().*^$-/
.
¿Hay alguna utilidad de búsqueda Unix que no use expresiones regulares, pero solo busque ocurrencias literales de una cadena?
Pase -F
a grep
.
Puede usar grep para eso, con la opción -F.
-F, --fixed-strings PATTERN is a set of newline-separated fixed strings
también puede usar awk, ya que tiene la capacidad de encontrar cadenas fijas, así como capacidades de programación, por ejemplo, solo
awk ''{for(i=1;i<=NF;i++) if($i == "mystring") {print "do data manipulation here"} }'' file
cat list.txt
one:hello:world
two:2:nothello
three:3:kudos
grep --color=always -F"hello
three" list.txt
salida
one:hello:world
three:3:kudos