
Gostaria de passar um parâmetro no final da linha enquanto dou um comando no terminal.
Então eu gostaria de algo como o exemplo abaixo
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"
e assim não preciso ir toda vez mudar o comando da -irl "SEARCH_PATTERN"
peça. Em vez disso, darei mais facilmente no final da linha.
desde já, obrigado
Responder1
Crie uma função:
mygrep() { find /path -type f -exec grep -irl "$1" {} +; }
mygrep waldo
Na verdade, por que você precisa find
?
mygrep() { grep -irl "$1" /path; }
Responder2
A única coisa em que consigo pensar agora, para este caso específico, é criar uma variável de ambiente SEARCH_PATTERN e arriscá-la sempre que quiser usá-la.
Exemplo 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...