Quando e porque unalias?

0

unalias remove / desativa um alias para a sessão atual, ou seja, um alias é temporariamente desativado. Se um alias estiver errado, indesejado ou não mais útil, simplesmente o excluo de .bashrc ou .bash_alias e source ~/.bashrc ou feche e reabra meu terminal.

Um uso que encontrei para unalias foi quando, depois de criar um alias em minhas .bash_aliases, decidi alterar o alias para uma função. Ou seja, eu mudei alias dothis="action" para dothis () { echo "some text"; action1; action2; } . Mas source ~/.bashrc continuou retornando um syntax error near unexpected token (' que eu não consegui consertar, até que percebi que o erro estava vindo do fato de que eu estava usando o mesmo nome para o alias original e a função recém-criada (soa como um óbvio erro, mas não tão à primeira vista). O erro desapareceu depois que eu desaprendi o alias original: unalias dothis .

Além deste caso, em quais situações seria necessário / queira unalias ?

    
por calocedrus 24.02.2017 / 03:20

1 resposta

2

If an alias is wrong, undesired or no more useful, I simply delete it from .bashrc or .bash_alias and source ~/.bashrc or close and reopen my terminal.

"Por que eu iria querer lavar as mãos se pudesse tomar um banho"?

Muitas vezes isso é uma ação impossível ou indesejável. Por exemplo, suponha que você tenha um monte de processos rodando em segundo plano no shell atual que irá morrer se você fechá-lo, ou imagine que você estava trabalhando em uma máquina remota, então reiniciar a sessão exigirá que você restabeleça a conexão, digite suas credenciais e, em alguns casos, lute com a autenticação em duas etapas.

Além disso, se você está apenas "visitando" um sistema no qual não tem um ambiente de configuração (para solucionar problemas de alguém, por exemplo), e não gosta muito da ideia de fazer ls em um alias para less , por exemplo, é muito mais fácil dizer unalias ls em vez de discutir com o usuário sobre o relançamento da sessão e editar suas configurações, ou sofrer com as ligações que você não gosta.

P.S.

I simply delete it from .bashrc or .bash_alias and source ~/.bashrc

Isso não livrará você dos aliases existentes, a menos que você faça unalias -a primeiro.

    
por 24.02.2017 / 08:00