GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでBashプロンプトをカスタマイズする方法

はじめに

Linuxでは、作業の多くはコマンドプロンプト(シェルとも呼ばれます)から行われます。 、または BASH (Bourne-Again Shell)。シェルはコマンドを解釈し、実行のためにオペレーティングシステムに渡します。

このチュートリアルでは、LinuxBASHプロンプトをカスタマイズまたは変更する方法を説明します。 。

前提条件

  • Linuxを実行しているシステム
  • コマンドライン/ターミナルへのアクセス
  • sudoのユーザーアカウント またはルート 特権

デフォルトのBASHプロンプト

デフォルトのBASHプロンプトは、ターミナルまたはコマンドラインを最初に開いたときに表示されるプロンプトです。通常は次のようになります:

[email protected]:~$

または、次のようになります。

(base) [[email protected] ~]$

プロンプトの最初の部分は、現在ログインしているユーザーを示します。2番目の部分は、システムのホスト名を識別します。

チルダ記号~ 現在の作業ディレクトリが現在のユーザーのホームディレクトリであることを示します。

ドル記号$ 現在のユーザーが標準ユーザーであることを意味します。

rootユーザーは、ハッシュ記号 #で識別されます。

LinuxでBashプロンプトをカスタマイズする

ほとんどのLinuxアプリケーションと同様に、BASHは構成ファイルを読み取ってその動作を判別します。このファイルはホームディレクトリにあります:

~/.bashrc

変更を加える前に、構成ファイルのバックアップコピーを作成してください。ターミナルウィンドウを開き、次のように入力します。

cp ~/.bashrc ~/.bashrc.bak

LinuxでBashプロンプトを恒久的に変更する

編集のためにBASH構成ファイルを開きます:

sudo nano ~/.bashrc

このファイルには、いくつかの異なる設定が表示されます。それらのいくつかは、 #でコメントされていない、青色の説明行です。 サイン。一部は白で、有効になっていることを示しています。

構成ファイルの一番下までスクロールします。次の行を追加します:

PS1="MyTestPrompt> "

MyTestPrompt>を置き換えることができます 好きなテキスト文字列を使用します。

ファイルを保存します( ctrl-o >入力 )そして終了します( ctrl-x

BASHサービスを更新して、変更を適用します。次のように入力します:

source ~/.bashrc

コマンドラインプロンプトは次のように変更されます。

MyTestPrompt>

BASHプロンプトに一時的な変更を加える

exportを使用して、BASHプロンプトを一時的に変更できます。 指図。このコマンドは、ユーザーがログアウトするまでプロンプトを変更します。

次のように入力して、ユーザー名のみを表示するようにBASHプロンプトを設定します。

export PS1="\u >"

プロンプトはすぐに次のように変更されます:

username >

ログアウトしてから再度ログインすると、プロンプトをリセットできます。

BASHプロンプトの人気のカスタムオプション

これらのオプションは、どちらの方法でも使用できます–一時的に export コマンド、または ~/.bashrcを編集して永続的に ファイル。

ユーザー名とドメイン名を表示する

–Hを使用する 完全なホスト名を表示するオプション:

export PS1="\u\H "

プロンプトにホスト名が表示されます。

特殊文字を追加

特殊オプションの周りに順番に配置することで、プロンプトに特殊文字を追加できます。

export PS1="\[email protected]\H :"

これにより、次のように表示されます。

[email protected]:

ユーザー名とシェル名およびバージョンの表示

次のように入力して、ユーザー名、シェル名、バージョンを表示します。

export PS1="\u >\s\v "

プロンプトは次のように変わります。

username >bash4.4

BASHプロンプトに日付と時刻を追加する

次のオプションを使用して、日付と時刻のさまざまな形式を表示します。

  • d 今日の日付を[平日]/[月]/[日]で表示します
export PS1="\[email protected]\H>\d "
  • t 現在の時刻を24時間表記で表示します
export PS1="\[email protected]\H>\t "
  • T 現在の時刻を12時間表記で表示します
export PS1="\[email protected]\H>\T "
  • A 現在の時刻を24時間表記で、時と分だけで表示します
export PS1="\[email protected]\H>\A "

BASHプロンプトですべての情報を非表示にする

これを使用して、ユーザー名またはホスト名がプロンプトに表示されないようにします。

export PS1="\W > "

次のように表示されます。

~ >

rootユーザーと通常のユーザーを区別する

通常のBASHプロンプトには、 $が表示されます。 通常のユーザーのサイン。 rootユーザーとしてログインする場合、 # サインが表示されます。 $を使用する 現在のユーザーがrootユーザーではないことを示すコード:

export PS1="\[email protected]\H \W:\$ "

その他のBASHプロンプトオプション

BASHプロンプトに使用できるほとんどのオプションのリストを次に示します。

これらのコマンドの一部は、Linuxのすべてのバージョンで機能するとは限りません。

  • \a –ベル文字
  • \ d –日付(日/月/日付)
  • \D{format} –これを使用してシステムを呼び出し、現在の時刻で応答します
  • \e –エスケープ文字
  • \h –ホスト名(短い)
  • \H –完全なホスト名(ドメイン名)
  • \j –シェルによって管理されているジョブの数
  • \l –シェル端末デバイスのベース名
  • \n –改行
  • \r –キャリッジリターン
  • \s –シェルの名前
  • \t –時間(時:分:秒)
  • \@ –時間、午前/午後12時間
  • \A –時間、24時間、秒なし
  • \u –現在のユーザー名
  • \v –BASHバージョン
  • \V –BASHバージョンに関する追加情報
  • \w –現在の作業ディレクトリ($ HOMEは〜で表されます)
  • \W –作業ディレクトリのベース名($ HOMEは〜で表されます)
  • \! –このコマンドの番号を履歴に一覧表示します
  • \# –このコマンドのコマンド番号
  • \ $ –ユーザーがroot(#)かそれ以外($)かを指定します
  • \\ –バックスラッシュ
  • \[ –表示されていない文字のシーケンスを開始します(コマンドまたは命令セットをプロンプトに追加する場合に便利です)
  • \] –表示されていない文字のシーケンスを閉じるか終了します

BASHプロンプトの色を変更する方法

BASHプロンプトのテキストの色を変更できます。たとえば、BASHプロンプトのテキストを一時的に緑色に変更するには、次のように入力します。

export PS1="\e[0;32m[\[email protected]\h \W]\$ \e[0m"

プロンプトのテキストは通常​​と同じですが、緑色になっている必要があります。

コマンドの内訳は次のとおりです。

\e[ –色の変更を開始します
0;32m –カラーコードを指定します
[\[email protected]\h \W]\$ –これは通常のBASHプロンプトのコードです([email protected] Workingdirectory $ )。
\e[0m –色変更モードを終了します

カラーコードの最初の数字は書体を指定します:

0 - 普通
1 –太字(明るい)
2 –薄暗い
4 –下線付き

2番目の数字はあなたが望む色を示しています:

30 - 黒
31 - 赤
32 - 緑
33 - 茶色
34 - 青
35 - 紫の
36 –シアン
37 –ライトグレー

さらに、明るいオプションとカラーコードを組み合わせると、その色の明るいバージョンが得られます。たとえば、カラーコード 1;32を使用する場合 、通常の緑の代わりに薄緑になります。 1;33を使用する場合 、茶色ではなく黄色になります。

BASHの変更をデフォルト設定にリセットする方法

変更をリセットするには2つの方法があります。一時的な変更の場合( export PS1=""を使用) コマンド)、ログアウトすることでデフォルトをリセットできます。

\.bashrcを編集した場合 永続的な変更を行うファイルの場合、デフォルト設定に戻すには2つの方法があります。

  • ファイルを編集して#を追加することにより、変更をコメントとしてレンダリングします 変更を加える前に。
  • 次のように入力して、バックアップからデフォルト設定を復元します。
sudo cp ~/.bashrc.bak ~/.bashrc

BASHプロンプトのさまざまな部分を理解する

続行する前に、BASHプロンプトをデフォルトにリセットしてください。 exportを使用した場合 コマンドを実行し、ログアウトしてから再度ログインします。 ~/.bashrcを編集した場合 ファイル、 #を配置します 編集する前に署名してファイルを保存してください。

BASHプロンプトには、 PS1、PS2、PS3、およびPS4の4つの異なる値が含まれています。 。

PSはプロンプトステートメントの略です 。これまで、PS1の値を使用してきました。現在のPS1値を確認するには、次のように入力します。

echo $PS1

システムによっては、端末はデフォルト設定に対して次のようなものを返します。


\[email protected]\hに気付くかもしれません ユーザー名としてのオプション およびホスト w オプションは、現在の作業ディレクトリを表示します。

次に、PS2の値を表示します:

echo $PS2

システムは山かっこだけを表示する必要があります:

>

PS3で同じコマンドを繰り返すのは空白にする必要があります。

PS4の場合、 +が表示されます サイン。

BASHプロンプトのさまざまな部分のさまざまな意味は次のとおりです。

  • PS1 –これは主要なプロンプト表示です。ここで、特殊文字や重要な情報を設定します。
  • PS2 –これはセカンダリプロンプト文字列です。これは通常、プロンプト表示とテキスト入力の間の仕切りとして設定されます。また、長いコマンドが \でセクションに分割されたときに表示するためにも使用されます サイン。
  • PS3 –これは selectのプロンプトです コマンド。
  • PS4 –これは、デバッグモードでシェルスクリプトを実行するためのプロンプトです。

ほとんどの場合、 PS1だけで作業します オプションと多分PS2 オプションもあります。


Linux
  1. LinuxでBashプロンプトをWinterize

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

  3. LinuxでBASHコマンドライン履歴をクリアする方法

  1. LinuxでBashの履歴をクリアする方法

  2. LinuxでBashプロンプトを短縮する方法は?

  3. Linux の Bash で syslog を確認するには?

  1. Linuxユーザー環境をカスタマイズする方法

  2. Linuxのsh(bashではない)のコマンドプロンプトで現在のパスを表示するには?

  3. bashからネットマスクを取得するには?