Estou usando o tcsh. bash e zsh e outras sugestões não ajudarão aqui.
Eu tenho vários aliases que são nomeados da mesma forma que outro comando; portanto, se eu o dessaliasse, digitar a mesma coisa agora faria algo diferente.
Na maioria das vezes, quero o comando com alias, e é por isso que os tenho. No entanto, às vezes eu quero o comando imparcial.
Sem realmente desalinhar e redefinir o comando, existe uma maneira simples de dizer ao tcsh para usar o comando desalinhado?
Por exemplo, vi é alias ao vim, mas às vezes eu quero apenas usar o vi. cd é um alias para alterar o título da minha janela, mas às vezes eu quero deixá-lo em paz.
Obviamente, eu poderia digitar / usr / bin / vi, mas como cd é um comando interno do shell, não há equivalente. Existe uma solução geral?
/usr/bin
aqui. Mas o manual confirma que a barra invertida deve funcionar ... e acontece que sim, mas você precisa citar um caractere interno para evitar aliases enquanto ainda suporta os componentes internos. BTW, se você está tentando fazer algo após acd
, dê uma olhadaalias cwdcmd
emtcsh(1)
; Isso também evita que você tenha que lidar compushd
/popd
etccommand
geralmente é um componente embutido nos shells POSIX e precisa sercommand -[Vv]
. Usar uma barra invertida para ignorar o alias funciona apenas para comandos regulares, não para builtins (porque os builtins não podem ser citados no (t) csh da mesma forma que os aliases).prefixe seu comando com a palavra 'comando'. Ex.
fonte
Não crie pseudônimos que incorporam shell shell. Sua vida será muito mais fácil . Existem muitas combinações de teclas, tente
cw
o alias do título da janela de alteração :)Editar: solução em duas etapas para corrigir alias que não são seus:
cd
de algo diferente do comando change-directory e solicite sua transferência para a coluna oped do jornal local. Ele não deveria estar mantendo um emprego em que pudesse forçar idéias como essa nas conchas de outras pessoas!echo unalias cd >> ~/.bashrc
fonte
unalias cd
.cd
alias pode estar definindo o título e alterando o diretório. Essa é uma prática bastante comum dos dias anterioresprecmd
e posterioresPROMPT_COMMAND
.