BASHプログラミング
 Computer >> コンピューター >  >> プログラミング >> BASHプログラミング

LinuxターミナルプロンプトでBashの色とコンテンツをカスタマイズする方法

現在、Bashは、ほとんどの(すべてではないにしても)最新のLinuxディストリビューションのデフォルトのシェルです。ただし、ターミナルのテキストの色とプロンプトの内容がディストリビューションごとに異なる場合があることに気付いたかもしれません。

推奨される読み物: Linuxで最も頻繁に使用される5つのオープンソースシェル

アクセシビリティを向上させるため、または単なる気まぐれのため​​にこれをカスタマイズする方法を知りたい場合は、読み続けてください。この記事では、その方法について説明します。

PS1Bash環境変数

コマンドプロンプトと端末の外観は、PS1と呼ばれる環境変数によって制御されます。 。 バッシュによると マニュアルページ、 PS1 シェルがコマンドを読み取る準備ができたときに表示されるプライマリプロンプト文字列を表します。

PS1で許可されているコンテンツ PROMPTINGにその意味がリストされているいくつかのバックスラッシュでエスケープされた特殊文字で構成されています マニュアルページのセクション。

説明のために、PS1の現在のコンテンツを表示してみましょう 私たちのシステムでは(これはあなたの場合は多少異なるかもしれません):

$ echo $PS1

[\[email protected]\h \W]$

次に、 PS1をカスタマイズする方法について説明します。 必要に応じて。

PS1フォーマットのカスタマイズ

マニュアルページのPROMPTINGセクションによると、これは各特殊文字の意味です:

  1. \u: ユーザー名 現在のユーザーの。
  2. \h: ホスト名 最初のドットまで(。) 完全修飾ドメイン名で。
  3. \W: ベース名 $ HOMEを使用した現在の作業ディレクトリの チルダで省略(〜)
  4. \$: 現在のユーザーがrootの場合は、を表示します 、 $ それ以外の場合。

たとえば、\!の追加を検討することができます。 現在のコマンドの履歴番号を表示したい場合、または\H 短いサーバー名の代わりにFQDNを表示したい場合。

次の例では、次のコマンドを実行して、両方を現在の環境にインポートします。

PS1="[\[email protected]\H \W \!]$"

Enterを押したとき プロンプトの内容が次のように変化することがわかります。上記のコマンドを実行する前後のプロンプトを比較します。

LinuxターミナルプロンプトでBashの色とコンテンツをカスタマイズする方法

それでは、さらに一歩進んで、ユーザーの色を変更しましょう。 およびホスト名 コマンドプロンプトで–テキストとその周囲の背景の両方。

実際、プロンプトの3つの側面をカスタマイズできます。

テキスト形式 前景色(テキスト)の色 背景色
0:通常のテキスト 30:黒 40:黒
1:太字 31:赤 41:赤
4:下線付きのテキスト 32:緑 42:緑
33:黄色 43:黄色
34:青 44:青
35:紫 45:紫
36:シアン 46:シアン
37:白 47:白

\eを使用します 最初の特殊文字とm 最後に、次がカラーシーケンスであることを示します。

このシーケンスでは、3つの値(背景フォーマット 、およびフォアグラウンド )はコンマで区切られます(値が指定されていない場合は、デフォルトが想定されます)。

推奨される読み物: LinuxでのBashシェルスクリプトを学ぶ

また、値の範囲が異なるため、どちら(背景)でも構いません 、フォーマット 、またはフォアグラウンド )最初に指定します。

たとえば、次のPS1 プロンプトが黄色で表示されます で下線が引かれたテキスト 背景:

PS1="\e[41;4;33m[\[email protected]\h \W]$ "
LinuxターミナルプロンプトでBashの色とコンテンツをカスタマイズする方法

見た目どおり、このカスタマイズは現在のユーザーセッションでのみ有効です。ターミナルを閉じるかセッションを終了すると、変更は失われます。

これらの変更を永続的にするには、次の行を~/.bashrcに追加する必要があります。 または~/.bash_profile ディストリビューションによって異なります:

PS1="\e[41;4;33m[\[email protected]\h \W]$ "

色を自由に試して、自分に最適な色を見つけてください。

概要

この記事では、Bashプロンプトの色と内容をカスタマイズする方法について説明しました。この投稿について質問や提案がある場合は、以下のコメントフォームを使用してお気軽にご連絡ください。ご連絡をお待ちしております!


  1. UbuntuLinuxをアップデートする方法[サーバーとデスクトップ]

    デスクトップでUbuntuLinuxを実行している場合は、組み込みの更新ツールを使用して更新するように定期的に求められます。しかし、Ubuntu Serverを使用している場合、または保留中の更新を手動で確認して実行したい場合はどうなりますか? このチュートリアルでは、デスクトップとサーバーでUbuntuLinuxOSを更新するために必要な手順について説明します。しかし、最初に、いくつかの関連記事: aptとapt-getコマンド–違いは何ですか? 「lsb_release」を使用してUbuntuLinuxでオペレーティングシステムのバージョンを確認します。 前文 すべてのパッケージ管

  2. Windows 10にBash(Linuxシェル)をインストールして使用する方法[チュートリアル]

    WindowsでLinuxシェルを設定して使用する方法は次のとおりです– Linux用Windowsサブシステムを使用します ( WSL 。 このチュートリアルは、2020年以降の最新バージョンのWindows10を対象としています。古いソフトウェアを使用するべきではないため、古いバージョンのWindows10でWSLを使用する方法やWindows8/7 / XP/3.1の他の方法については説明しません。 Windowsを使用する必要がある場合は、セキュリティパッチをまだ受けているバージョンを使用してください! WSL は優れたツールであり、Linuxを離れたことがないかのよ