Cent OS 6.8 でエイリアスを作成できません

Cent OS 6.8 でエイリアスを作成できません

要するに:

$ alias search=grep
$ search
search: Command not found.

$ alias search='grep'
$ search
search: Command not found.

$ alias search="grep"
$ search
search: Command not found.

なぜalias動作しないのですか?

エイリアスを追加してsource次のファイルも実行しましたが、同じエラーが発生します。

~/.bashrc
~/.bash_profile
~/.profile

たとえば、これが私の場合~/.bashrc:

alias wtf='git'                                                                 
alias foo="ls"                                                                                  
alias search=grep 

そして、source ~/.bashrc新しいターミナルを開いても、次のメッセージが表示されます:

$ foo
foo: Command not found.
$ wtf
wtf: Command not found.
$ search
search: Command not found.

私はこのマシン (Cent OS 6.8、関係があるかどうかはわかりません) のルートではないのですが、実行するとaliasすべてのユーザーのエイリアスが表示されます。自分のユーザーだけにエイリアスを作成することはできないのでしょうか?

答え1

問題は、私のマシンのデフォルトのシェルがtsch

を実行してecho $SHELL、使用しているシェルを判断します。 または の場合はtsch、エイリアスを割り当てるために 記号cshを使用しません=

たとえば、次のようになりますtsch:

$ alias foo="ls"
$ foo
foo: Command not found.

しかし:

$ alias bar ls
$ bar
<works and lists folder contents>

デフォルトのシェルを に変更するにはbash、次のコマンドを実行します。

$ chsh -s /bin/bash

エイリアスを維持するにはtcsh、ファイルを作成する必要があります~/.tcshrc

関連情報