36
レインボーテキスト、ASCIIアートなど:Linuxターミナルをカスタマイズする

Linuxターミナルは、コマンドラインや「シェル」と呼ばれることもあり、コンピューターを操作するためのシンプルでありながら強力な手段です。コマンドはターミナルに入力され、その出力は即座にターミナルに表示されます。 

Linuxターミナルでは、ユーザーの作成、ネットワーク接続、ファイルのダウンロードが可能です。しかし、これだけの高機能にもかかわらず、ターミナルは現代のデスクトップほど「使いやすく」はありません。どうすればターミナルをもう少し使いやすくできるでしょうか? 虹やアート、CPU温度、IPアドレス、最新の天気などの便利な情報でLinuxターミナルをカスタマイズする方法があります。

Linuxツール

(画像提供:Tom's Hardware)

このチュートリアルは、ほとんどのLinuxディストリビューションで動作します。Ubuntu 20.04でテストしましたが、Raspberry Pi OSを搭載したRaspberry Piの全モデルでも動作します。 

bashrc を使って Linux ターミナルをカスタマイズする 

Linuxツール

(画像提供:Tom's Hardware)

.bashrc ファイルはホームディレクトリにあり、Bash プロンプトの設定に使用されます。リモート接続を含む新しい Bash シェルが起動されるたびに、この bashrc ファイルを使用してシェルを要件に合わせて設定します。通常は bashrc ファイルをそのまま使用しますが、いくつかの追加ツールを使用することで、シェルは CPU 温度、IP アドレス、最新の天気予報を報告できるようになります。

bashrcを編集するには

1.ターミナルを開いてGeanyをインストールします。GeanyはRaspberry Pi OSにプリインストールされています。

sudo apt install geany

2.プログラミング メニューにあるGeany を開きます。

Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。

3. 「ファイル」>>「開く」をクリックし、ホームディレクトリに移動します。

4.右クリックして「隠しファイルを表示」を選択し、.bashrc を探します。

5. .bashrc の一番下に移動し、 # で始まる行の コメントを作成します。

# Tom’s Hardware Hacks

Linuxターミナルに最新の天気情報を追加する 

Linuxツール

(画像提供:Tom's Hardware)

最新の天気情報を端末に直接お届けします。データセンターにいるときや、窓のないオフィスにいるときに便利です。このwttrでは、シンプルなテキストベースのサービスを使用しています。 

bashrcファイル内

1.ファイルの一番下、コメント行の下に移動します。

Linuxツール

(画像提供:Tom's Hardware)

2.以下の行を追加し、CITYを居住地に合わせて変更してください。 ?Aオプションはユーザーエージェントを無視し、ANSI出力を強制します。?uオプションは華氏温度を強制します。 

#Weather
curl wttr\.in/"CITY"?0?A?u

Linuxツール

(画像提供:Tom's Hardware)

3.  コードを保存して新しいターミナルを開くと、あなたの都市の最新の天気の詳細が表示されます。 

Linuxターミナルに太字のASCIIアートを追加する 

Linuxツール

(画像提供:Tom's Hardware)

アメリカ標準情報交換コード(ASCII)は、電子情報を共有するための一般的なエンコード規格です。ASCIIは、ターミナルでシンプルなグラフィックを作成するために使用できます。figletツールは、大きなASCIIテキストバナーを作成するのに使用でき、インストールも簡単です。

1.ターミナルを開き、このコマンドを使用してインストールします。

sudo apt install figlet

2.   figlet が正しくインストールされているかどうかをテストするには、 このコマンドを入力します。

figlet “Hello World”

Linuxツール

(画像提供:Tom's Hardware)

3.   bashrc に天気データのカスタム バナーを追加するには、bashrc ファイルに戻り、#Weather の下に行を挿入します。 

Linuxツール

(画像提供:Tom's Hardware)

現在のCPU温度を表示する 

Linuxツール

(画像提供:Tom's Hardware)

Linuxでは、CPU温度データはlm-sensorsというツールを使って収集されます。このツールはCPUやその他のデバイスに搭載されているセンサーの情報を読み取り、ターミナルにデータを表示します。Raspberry Piにはvcgencmdというコマンドがあり、これを使ってCPU温度を測定できます。ここでは、選択したマシンの温度を取得する2つの方法を紹介します。

Ubuntu / Linux ユーザー

1.ターミナル経由でlm-sensorsをインストールする

sudo apt install lm-sensors

2.   .bashrc ファイルに新しい行を追加し、figlet を使用して CPU 温度セクションの見出しを作成します。 

figlet “CPU Temp”

3.   sensors コマンドを実行する新しい行を追加し、そのコマンドの出力を一連の検索とカットにパイプして、CPU 温度だけを抽出します。 

sensors | grep -A 0 '+' | cut -c1-25 | grep "Package id 0:" | cut -c17-23

4.  新しいターミナルを開くと、現在の CPU 温度が表示されます。

ラズベリーパイ

Linuxツール

(画像提供:Tom's Hardware)

1.  コマンドの出力を格納する「data」という変数を作成します  。ただし、その前にコマンドの出力は「|」を使ってパイプされ、次のコマンド「cut」の入力として使用されます。「cut」は出力から温度だけを切り出します。 

data=$(vcgencmd measure_temp | cut -d '=' -f 2)

2.   figlet を使用してデータを画面に出力します。 

figlet "CPU Temp: ""${data}"

Linuxツール

(画像提供:Tom's Hardware)

3.  ファイルを保存し、新しいターミナルを開いて出力を確認します。 

LinuxターミナルでIPアドレスを表示する 

Linuxツール

(画像提供:Tom's Hardware)

頻繁に必要となる情報の 1 つは内部 IP アドレスであり、次の手順に従うと、ターミナルを開いたときにこの IP アドレスが表示されます。

1. bashrc ファイルの下部に、コードの実行内容を識別するコメントと、figlet コマンドにパイプする hostname コマンドの 2 行を追加します。

#Internal IP Address
hostname -I | figlet

Linuxツール

(画像提供:Tom's Hardware)

2.  ファイルを保存し、新しいターミナルを開いて IP アドレスを確認します。 

虹を作ろう! 

Linuxツール

(画像提供:Tom's Hardware)

Bashシェルの標準出力は機能的ですが、カラフルではありません。でもご安心ください。わずか数ステップでカラー出力を実現できます。Lolcatは、標準出力にカラフルな虹色効果を追加するコマンドです。

1.ターミナルを開き、lolcat をインストールします。

sudo apt install lolcat

2.   bashrc を開き、天気、CPU 温度、IP アドレスの figlet 行を編集して、コマンドがパイプを使用して出力を lolcat に送信するようにします。 

figlet "Weather" | lolcat
figlet "CPU Temp: ""${data}" | lolcat
hostname -I | figlet | lolcat

3. Ubuntu ユーザーは、次のように lolcat を使用して CPU 温度セクションをフォーマットする必要があります。 

sensors | grep -A 0 '+' | cut -c1-25 | grep "Package id 0:" | cut -c17-23 | lolcat

Bashプロンプトをユニークにする 

Linuxツール

(画像提供:Tom's Hardware)

Bashプロンプトはコマンドを入力する場所であり、簡単な情報を表示するためにも使用できます。デフォルトでは、ユーザー名、ホスト名、現在の作業ディレクトリが表示されます。

1. bashrc ファイルの最後に、次のコード セクションが何を行うかを説明するコメントを追加します。

#Cool Bash Prompt

2.  赤、緑、青の色を表す3つの変数を作成します。各変数に対して、tputコマンドを使用してプロンプト内のテキストに特定の色を設定します。 

red=$(tput setaf 1)
green=$(tput setaf 2)
blue=$(tput setaf 6)

3.  色を通常の状態に戻す処理を実行する行を追加します。 

reset=$(tput sgr0)

4.  このコード行は新しいプロンプトを作成します。最初のセクション、時刻 (\t)、ユーザー名 (\u) は赤色になります。「@」記号は白色、ホスト名 (\h) は緑色、作業ディレクトリ (\w) はシアン色になります。最後に、$ (特別な権限を持たないユーザーを表す) は白色にリセットされます。

export PS1='$red\]\t $red\]\u\[$reset\]@\[$green\]\h\[$reset\]:\[$blue\]\w\[$reset\]\\$ '

Linuxツール

(画像提供:Tom's Hardware)

Linuxターミナルをカスタマイズするための完全なコードリスト 

Ubuntu / Linux 

Linuxツール

(画像提供:Tom's Hardware)
#Tom's Hardware Hacks
#Weather
figlet "Weather" | lolcat
curl wttr\.in/"New York"?0?A?u #CPU Temp
figlet "CPU Temp" | lolcat
sensors | grep -A 0 '+' | cut -c1-25 | grep "Package id 0:" | cut -c17-23 #Internal IP Address
hostname -I | figlet | lolcat #Cool Bash Prompt
red=$(tput setaf 1)
green=$(tput setaf 2)
blue=$(tput setaf 6)
reset=$(tput sgr0)
export PS1='$red\]\t $red\]\u\[$reset\]@\[$green\]\h\[$reset\]:\[$blue\]\w\[$reset\]\\$ '

Linuxツール

(画像提供:Tom's Hardware)

bashrc ファイルの最後は、次のようになるはずです。 

# Tom's Hardware Hacks
#Weather
figlet "Weather" | lolcat
curl wttr\.in/"New York"?0?A?u
#figlet "CPU Temp"
data=$(vcgencmd measure_temp | cut -d '=' -f 2)
figlet "CPU Temp: ""${data}" | lolcat
#Internal IP Address
hostname -I | figlet | lolcat #Cool Bash Prompt
red=$(tput setaf 1)
green=$(tput setaf 2)
blue=$(tput setaf 6)
reset=$(tput sgr0)
export PS1='$red\]\t $red\]\u\[$reset\]@\[$green\]\h\[$reset\]:\[$blue\]\w\[$reset\]\\$ '

ターミナルの外観と操作性を変更する 

Ubuntu / Linux

Ubuntuターミナルでは、設定メニューはウィンドウの右上にある「ハンバーガー」メニューにあります。「+」記号をクリックして新しいプロファイルを作成し、プロファイル名を入力してください。

Linuxツール

(画像提供:Tom's Hardware)

フォント、背景色、前景色は「色」タブで変更できます。ウィンドウの透明度もここで変更できます。 

Linuxツール

(画像提供:Tom's Hardware)

 ラズベリーパイ

Linuxツール

(画像提供:Tom's Hardware)

デフォルトのターミナルは、さまざまなフォントや色を使用するようにカスタマイズできます。

1. 「編集」>>「設定」をクリックします。

2. 「ターミナルフォント」をクリックし、好みに応じてフォントスタイルとサイズを変更します。

Linuxツール

(画像提供:Tom's Hardware)

3.   「選択」をクリックし、「OK」をクリックして変更を確定します。フォントやサイズによっては、読みやすいものとそうでないものがございますのでご注意ください。 

Linuxツール

(画像提供:Tom's Hardware)