Cómo pasar el parámetro en el comando de Linux al final de la línea

Cómo pasar el parámetro en el comando de Linux al final de la línea

Me gustaría pasar un parámetro al final de la línea mientras doy un comando en la terminal.

Entonces me gustaría algo como el siguiente ejemplo.

find /path/to/directory -type f -exec grep -irl "SEARCH_PATTERN" {} \;

algo como este formato:

find /path/to/directory -type f -exec grep -irl "$1" {} \; < "SEARCH_PATTERN"

y de esta manera no tengo que ir cada vez y cambiar el comando en la -irl "SEARCH_PATTERN"pieza. En lugar de eso, lo daré más fácilmente al final de la línea.

gracias de antemano

Respuesta1

Crea una función:

mygrep() { find /path -type f -exec grep -irl "$1" {} +; }

mygrep waldo

En realidad, ¿por qué lo necesitas find?

mygrep() { grep -irl "$1" /path; }

Respuesta2

Lo único que se me ocurre ahora, para este caso particular, es crear una variable de entorno SEARCH_PATTERN y probarla cada vez que quieras usarla.

Ejemplo rápido;

$ SEARCH_PAT="abc"
$ find /path -type f -exec grep -irl "${SEARCH_PAT}" {} \;
$ SEARCH_PAT="xyz"
$ find /path -type f -exec grep -irl "${SEARCH_PAT}" {} \;

etc...

información relacionada