私は現在bashを持っていますPS1
を次のように設定します。
PS1="\[\`if [[ \$? = "0" ]]; then echo '\e[32m\h\e[0m'; else echo '\e[31m\h\e[0m' ; fi\`:\w\n\$ "
相対パスではなく絶対パスを表示するにはどうすればよいですか(例:/home/dave/dir
の代わりに ~/dir
)?
\w
を\$PWD
に置き換えるだけです。
PS1="\[\`if [[ \$? = "0" ]]; then echo '\e[32m\h\e[0m'; else echo '\e[31m\h\e[0m' ; fi\`:\$PWD\n\$ "
とにかく、ちょっとしたヒントが気になったら、次のようなものを書きます。
PS1='\[`[ $? = 0 ] && X=2 || X=1; tput setaf $X`\]\h\[`tput sgr0`\]:$PWD\n\$ '
家に置く.bashrc
PS1='\u@\h:\w\$ '
Humm〜/ dirは絶対パスですが、「ショートカット」を使用しています。たとえば、cd /usr/local
プロンプトは、おそらく/ usr/localの完全パスを表示します。とにかく、あなたはすでに完全なパスを持っています:-)
しかし、おそらく正しい質問は、〜のようなショートカットなしでフルパスを表示する方法です。
しかし、私はその答えを知りません、そして男性を見て、それはそれを持っているようです(少なくとも文書化されています)。
\W
を使用する代わりにpwd
を実行します。
シンプルなバージョン:
export PS1="\`pwd\` $ "
これをコードで使用する:
export PS1="\[\`if [[ \$? = "0" ]]; then echo '\e[32m\h\e[0m'; else echo '\e[31m\h\e[0m' ; fi\`:\`pwd\`\n\$ "
bashのps1で; -Wは相対であり、-wは絶対である必要があるため、上記ではすでに絶対的なものである必要がありますか?