regex - online - grep-r example
inserte ''.'' entre todos los caracteres en grep regex y uso en grep (2)
Quiero insertar ''.''
entre cada carácter en una cadena de entrada dada y luego usarlo como argumento en una tubería
Estoy haciendo uno de los siguientes:
tail -f file.txt | grep -a ''R.e.s.u.l.t.''
tail -f file.txt | awk ''/R.e.s.u.l.t./''
¿Cómo puedo simplemente teclear ''Result''
y pasarlo como el argumento de expresión regular a grep
cuando recibo entrada desde un buffer creado por tail -f
usando funciones predeterminadas de bash
adicionales?
La versión awk:
tail -f file.txt |
awk -v word="Result" ''
BEGIN {gsub(/./, "&.", word); sub(//.$/, "", word)}
$0 ~ word
''
tail -f file.txt | grep -a -e "$(echo Result | sed ''s/./&./g'')"
Esto hace eco de la palabra Result
como entrada a sed
(considere una cadena aquí en su lugar), que reemplaza a cada carácter consigo mismo seguido de a .
, y luego la salida se usa como la expresión de búsqueda para grep
. El -e
protege de contratiempos si quiere buscar -argument
con los puntos, por ejemplo. Si la cadena está en una variable, también usaría comillas dobles para eso:
result="Several Words"
tail -f file.txt | grep -a -e "$(echo "$result" | sed ''s/./&./g'')"