Bashプロンプトのホスト名を非表示にする

公開:2020/10/03
更新:2020/10/21
1 min読了の目安(約1200字IDEAアイデア記事

Windows Subsystem for Linuxでコマンド確認等する際に、

Windows PCのデバイス名が表示されるのが嫌だったので非表示にする。

Bashプロンプト行頭フォーマット変更

  • 参考

  • 環境

    • Windows PCのデバイス名DESKTOP-M5NE5GB
    • SUSE Linux Enterprise Server 15(WindowsのWSL)導入直後
  • 方法

    • プロンプト表示フォーマットPS1変数を変更

デフォルト確認

  • rootユーザにて確認
    • DESKTOP-M5NE5GB:~ # となっている
DESKTOP-M5NE5GB:~ #
DESKTOP-M5NE5GB:~ # pwd
/root
DESKTOP-M5NE5GB:~ # echo "$PS1"
\[\]\h:\w #\[\] 
  • rootユーザのデフォルトPS1値詳細:\[\]\h:\w #\[\]
    • \[
      • 非表示文字のシーケンスの開始(プロンプト中に端末の制御シーケンスを埋め込む)
    • \]
      • 非表示文字のシーケンスを終了
    • \h
      • ホスト名のうち最初の `.' までの部分
    • :
      • ホスト名とカレントディレクトリの間の区切り文字
    • \w
      • 現在の作業ディレクトリ(PROMPT_DIRTRIM の値)
      • 可読性向上のためのスペース
    • #
      • rootユーザを表す目的としての記号
    • \[
      • 非表示文字のシーケンスの開始
    • \]
      • 非表示文字のシーケンスを終了
      • 可読性向上のためのスペース

ホスト名を削除

  • \h:を削除
DESKTOP-M5NE5GB:~ # export PS1="\[\]\w #\[\] "
~ # 
~ # mkdir work
~ # cd work
~/work #
  • 再度プロンプトを開いた際にも適用するためには、.bashrcに記載
    • ※適用したいユーザ毎に、ユーザディレクトリ下の.bashrcを編集が必要
DESKTOP-M5NE5GB:~ # vi /root/.bashrc
DESKTOP-M5NE5GB:~ # cat /root/.bashrc
export PS1="\[\]\w #\[\] "