como você alias um programa cujo nome entra em conflito com um built-in enquanto retém o built-in sob um nome diferente?

0

Em zsh 'kill' é um built-in.
Eu gostaria de alias killall para matar, como eu uso 'killall' mais frequentemente e aliasing-lo matar seria mais conveniente. Eu gostaria de manter a capacidade de usar kill, no entanto, se possível, aliasing para 'pidkill' ou algo dessa natureza.

Como posso conseguir isso? ou há uma rota mais conveniente que eu possa tomar que eu não conheço?

    
por joshua.thomas.bird 23.06.2012 / 07:24

2 respostas

0

O que você está pedindo é facilmente conseguido com aliasing kill to killall. Se você quiser usar kill, simplesmente digite '\ kill'. Começar com uma barra invertida desativa os aliases. Levando isso adiante para realizar o que você quer:

alias kill=killall
alias pidkill='\kill'

Mas, mais precisamente, como disse Nuno Cordeiro, não tente fazê-lo pelas mesmas razões que afirmou, também com um comando como matar.

    
por 24.06.2012 / 07:44
1

Resposta curta: não faça isso.

Explicação: Mesmo se você encontrar uma maneira de fazer isso, estará quebrando o comportamento esperado de seu sistema e estará criando um hábito mental para você que não funcionará em sistemas padrão.

Se você realmente quiser isso, crie um novo alias de comando (que não corresponde a nenhum built-in) e use-o. Algo como kall soa perfeito para mim ...

    
por 23.06.2012 / 15:28