bashrcでは特殊文字が機能しません

bashrcでは特殊文字が機能しません

端末をカスタマイズする方法のチュートリアルを探していました。 PS1を次のようにカスタマイズしようとしたとき

PS1="\u@\h \W -> "
export PS1;

端末からファイルをインポートするのではなく、ファイルをインポートした場合ユーザー名@ホストディレクトリわかりました。

\u@\h \W -> 

これまでのところ、私の.bash_profileファイルと.bashrcファイルの内容は次のとおりです。

.bash_config ファイル

if [ -s ~/.bashrc ]; then
    source ~/.bashrc;
fi

.bashrc

PS1="\u@\h \W -> "
export PS1;

どんな助けでも大変感謝します。ありがとうございます!

答え1

どんな結果が得られますかecho $0

出力は次のとおりです-zsh

これは、BashではなくZshを実行していることを意味するようです。 ZshはBashの即時拡張をサポートしていませんが、独自のシステムを持っています。望むより:http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html

次のように入れてみてください.zshrc

PS1='%n@%M %~ -> '

どのログインシェルを表示または/etc/passwd実行して確認できますgetent passwd $USER(Linuxで動作する必要があります)。最後のフィールドはシェルです。

Bashをログインシェルとして実行するには、chsh -s /bin/bashそれを変更する必要があります。

関連情報