どのシェルで実行されていますか?

どのシェルで実行されていますか?

echo $SHELL出力を実行すると、シェルが/bin/tcsh実行されていることを意味しますtcsh。しかし、例えば、次のコマンドを実行すると

alias emacs 'emacs -nw' 

次のエラーが発生します。

bash: alias: emacs: not found
bash: alias: emacs -nw: not found

私が出版したときにうまくalias emacs="emacs -nw"いきました!

実行中ですが、tcshコマンドがによって実行されるので混乱していますbash

なぜですか?

ベストアンサー1

$SHELL必ずしも現在シェルである必要はありません。デフォルトのログインシェル。使用しているシェルを確認するには:

ps $$

psこれは、BSD構文をサポートする最新のUnix / Linuxで動作します。それ以外の場合はポータブル(POSIX)方式です。

ps -p $$

実行している場合は、次の内容を返す必要がありますtcsh

8773 pts/10   00:00:00 tcsh

tcshデフォルトのシェルとして使用するには、chshを使用して設定します。

おすすめ記事