Como dizer ao bash para não expandir aliases

6

Eu sei que existe uma sintaxe simples para dizer ao bash para não expandir aliases. No entanto, o Google não está aumentando e eu estou com preguiça de ler man bash. Além disso, a resposta deve estar neste site.

    
por Personman 16.10.2010 / 12:27

3 respostas

12

Coloque uma barra invertida antes do primeiro caractere.

$ alias ls="echo foo"
$ ls
foo
$ \ls
bin
Desktop
Documents
  ...
    
por 16.10.2010 / 12:41
8

Você pode usar o comando command shell builtin. Ele executará apenas os comandos encontrados no PATH ou nos shell builtins. Não executará aliases ou funções de shell.

Exemplo:

alias ls='ls -l'
$ ls
drwxr-xr-x 3 user user 4096 2010-10-11 13:17 dir1
drwxr-xr-x 3 user user 4096 2010-10-15 15:37 dir2
$ function ls() {
> echo hello
> }
$ ls
hello
$ command ls
dir1  dir2
    
por 16.10.2010 / 13:09
3

Digite shopt -u expand_aliases no shell bash (a opção -u é para unset). Eu recomendo ler a man page para shopt.

    
por 23.02.2012 / 17:39

Tags