linux - texto - grep buscar palabra exacta
Encuentre todos los archivos cuyos nombres contengan una cadena dada y resáltelo (2)
Para mayor comodidad, puede crear una función BASH para esto:
hlt() { find . -iname ''*''"$1"''*'' | grep --color "$1"; }
y llámalo como:
hlt foo
Me encuentro escribiendo este comando mucho:
find . -iname "*foo*" | fgrep -i "foo"
Para buscar todos los archivos y carpetas que tienen "foo" en sus nombres, y para resaltar la parte correspondiente en los resultados.
Eso no es muy conveniente. ¿Cuál sería una solución más simple? ¿Debo escribir un comando personalizado para esto?
Si está utilizando bash, eche un vistazo a Make a Bash alias que toma un parámetro? para saber cómo hacer un "comando personalizado", también tenga en cuenta que grep sin -i distingue entre mayúsculas y minúsculas mientras que -iname no es así, puede que le falten algunos hilights mixtos. En la nota lateral, fgrep debería ser más rápido que grep y probablemente tenga menos recursos :)