sobrescrever um comando interno me custou muita velocidade a longo prazo?

0

Eu estava procurando por sobrescrever um comando interno e encontrei um caminho definindo uma função no arquivo ~/.bashrc . Desejo sobrescrever o comando cd para que, quando eu mudar para um novo diretório, ele faça o seguinte:

  • ative virtualenv em para python, se disponível.
  • imprima as linhas em um arquivo chamado ".todo", se disponível.
  • Possíveis novas opções ...

Vou usá-lo apenas para desenvolvimento e, na verdade, posso executar essas tarefas escrevendo mais um comando, por exemplo. %código%.

A pergunta é: Substituir o comando cd me causará baixa velocidade ao usar outros aplicativos (que usam o comando cd em um script) ou é insignificante *?

* É claro que isso causará uma diminuição na velocidade, já que verificará duas condições se todas as vezes, mas esta diminuição é insignificante?

Estou usando um laptop e não um sistema embarcado, por isso tenho poder de processamento suficiente.

    
por atayenel 11.09.2016 / 15:52

1 resposta

0

Resposta óbvia: Experimente. Prepare-se estando pronto para desfazer a mudança.

Eu uso:

No início do meu ~/.bash_aliases (originado de ~/.bashrc ):

declare -i is_interactive
case $- in
  *i*) is_interactive=1 ;;
  *) is_interactive=0;;
esac

Mais tarde,

if [[ $is_interactive -eq 1 ]] ; then
# from the "xttitle(1)" man page - put info in window title
update_title()
{
    [[ $TERM = xterm ]] || [[ $TERM = xterm-color ]]  && xttitle "[$$] ${USER}@${HOSTNAME}:$PWD"
}

cd()
{
    [[ -z "$*" ]] && builtin cd $HOME
    [[ -n "$*" ]] && builtin cd "$*"
    update_title
}

Em todos os meus sistemas, por reflex, (5x Desktops, 4x Laptops), alguns antigos, e eu nunca notei nenhum atraso. YMMV, dependendo de quanto trabalho você faz antes e depois do verdadeiro cd .

    
por waltinator 11.09.2016 / 20:05