Como posso fazer o bash update sem reiniciá-lo depois de remover um alias?

3

Minha tarefa é simplesmente remover um alias e atualizar s.t. o antigo alias não funciona. Sim, eu sei que existem muitos comandos source por aí, no entanto, não parece funcionar para mim desta vez. Minha configuração é a seguinte; No meu ~/.bash_aliases eu fiz este alias :

alias gali='gedit ~/.bash_aliases;sort ~/.bash_aliases -o ~/.bash_aliases;sbash' Onde sbash='source ~/.bashrc' .

Para adicionar e atualizar, o que funciona como um encanto, mas quando eu removo um alias usando este comando ou passo a passo, o bash não atualiza. Como posso fazer isso acontecer? Agradecemos antecipadamente.

    
por Thomas 23.03.2017 / 16:25

1 resposta

4

Quando você remove um alias do .bash_aliases , ele não é removido dos aliases bash .

Se você quiser ter apenas os aliases em .bash_aliases , você precisará limpar todos os aliases do shell bash e depois carregar os aliases do .bash_aliases

Limpar todos os aliases de shell bash do Linux / UNIX

Se a opção -a for fornecida, remova todas as definições de alias.

$ unalias -a

Assumindo que todos os seus aliases existam em ~/.bash_aliases (suspeito que você esteja usando aliases de outras fontes também ...), você deve executar unalias -a follows pelo comando para source ~/.bash_alises

Seu código deve ficar assim:

alias gali='gedit ~/.bash_aliases;sort ~/.bash_aliases -o ~/.bash_aliases;unalias -a; source ~/.bash_aliases'
    
por Yaron 23.03.2017 / 16:29