Como eu defino um alias para um comando de busca que leva dois argumentos

1

Eu tenho um comando shell que encontra arquivos que contêm 2 strings juntos:

$ grep -rl JFL . 2>/de/null | while read n; do grep -l 20120907 "$n"; done

As sequências acima são JFL e 20120907

Agora, gostaria de defini-lo como um alias, como abaixo:

mysearch JFL 20120907

Como posso criar esse alias?

    
por alwbtc 02.10.2012 / 21:35

1 resposta

3

adicione ao seu ~./bashrc o seguinte:

mysearch () {
      grep -rl "$1" . 2>/dev/null | while read n; do grep -l "$2" "$n"; done
}

Isso define a função que ficou disponível como um comando no prompt bash . Todos os argumentos para o functions no bash são expandidos como $1 , $2 , ... como argumentos para os scripts. Ao editar seu .bashrc , não se esqueça de reiniciar o bash (re-login), pois o bash lê este arquivo quando for iniciado.

    
por 02.10.2012 / 21:42