Como passar parâmetros para um alias no Bash

Publicado por Fábio Berbert de Paula em 20/04/2020

[ Hits: 5.937 ]

Blog: https://fabio.automatizando.dev

 


Como passar parâmetros para um alias no Bash



O título dessa dica é meio que clickbait, por se tratar de uma alternativa a passar parâmetros para um alias no Bash, uma vez que não há esse suporte (não que eu saiba).

Ao invés de criarmos um alias no teu arquivo ~/.bash_profile (ou qualquer outro arquivo de início de seção que queira, seja global ou de usuário) você irá criar uma função.

Como exemplo, vamos criar um "alias" para o comando find passando como parâmetros o diretório e o nome de arquivo. Coisa bem simples. O comando seria:

find [diretorio] -name "[nome_arquivo]" -print

Edite o arquivo ~/.bash_profile e adicione o seguinte bloco de linhas:

busque() {
   find $1 -name "$2" -print
}

Recarregue as configurações ou reinicie a sessão de usuário:

source ~/.bash_profile

Agora basta executar o comando com os parâmetros/argumentos desejados:

busque /etc \*conf
/etc/request-key.conf
/etc/firebird/3.0/plugins.conf
/etc/firebird/3.0/fbintl.conf
/etc/firebird/3.0/firebird.conf
/etc/firebird/2.5/fbtrace.conf
/etc/firebird/2.5/aliases.conf
/etc/firebird/2.5/fbintl.conf
...


O comando acima seria similar ao digitar:

find /etc -name "*conf" -print

Até a próxima!

Outras dicas deste autor

Instalação e Configuração do Oracle Express Edition e SQL Developer no Ubuntu

Como instalar última versão Node.js via repositório no Ubuntu, Debian e derivados

Como criar pendrive USB do Windows 10 bootável usando Linux

Vim - incrementando números em substituição

Instalar MongoDB 4.4 no Debian 10 Buster

Leitura recomendada

Solucionando problemas com o xmessage no wine

Consertando o ^M em scripts shell

Comando para listar usuários Samba

Excluindo arquivos por data: find + xargs + rm

Script para redimensionar muitas fotos

  

Comentários
[1] Comentário enviado por dix em 20/04/2020 - 18:08h

Muito bom! Eu uso bastante no ~/.bash_aliases:
alias duckg='_duckgo(){ q="${@}";lynx https://duckduckgo.com/html?q="${q// /+}"; };_duckgo'



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts