Resumidamente:
$ alias search=grep
$ search
search: Command not found.
$ alias search='grep'
$ search
search: Command not found.
$ alias search="grep"
$ search
search: Command not found.
Por que não está alias
funcionando?
Também adicionei aliases e executei source
os seguintes arquivos, mas obtive o mesmo erro:
~/.bashrc
~/.bash_profile
~/.profile
Por exemplo, se este for meu ~/.bashrc
:
alias wtf='git'
alias foo="ls"
alias search=grep
E eu source ~/.bashrc
abro um novo terminal, ainda recebo isto:
$ foo
foo: Command not found.
$ wtf
wtf: Command not found.
$ search
search: Command not found.
Não sou root nesta máquina (Cent OS 6.8, não tenho certeza se isso é relevante) e, quando executo, alias
vejo os aliases de todos os usuários. Não posso criar aliases apenas para meu usuário?
Responder1
O problema é que o shell padrão da minha máquina étsch
.
Execute echo $SHELL
para determinar qual shell você está usando. Se for tsch
ou csh
, você não usa o =
sinal para atribuir aliases.
Por exemplo, em tsch
:
$ alias foo="ls"
$ foo
foo: Command not found.
Mas:
$ alias bar ls
$ bar
<works and lists folder contents>
Para alterar seu shell padrão para bash
, você pode executar:
$ chsh -s /bin/bash
Para manter tcsh
os aliases, você terá que criar um ~/.tcshrc
arquivo.