1. トップ
  2. 新着ニュース
  3. IT
  4. パソコン

Windows Subsystem for Linuxガイド 第40回 Bashのヒストリ機能 その2「設定編」

マイナビニュース / 2024年10月16日 17時56分

画像提供:マイナビニュース

前回の続きで、bashのヒストリ関連の機能を解説する。今回は、ヒストリ機能関連のコマンドとbashのヒストリ機能設定に関してである。
ヒストリ関連コマンド

ヒストリ関連のコマンドとしては、「fc」および「history」の2つがある。なお、どちらもbashの組み込みコマンド(builtins)であり、実行ファイルは存在しない。基本的な使い方はbuiltins manページ(あるいは、man fcやman history)で調べることができる。

historyはその名前の通り履歴リストの表示や制御を行うためのコマンド(表01)。ヒストリのリスト表示やファイルへの保存、履歴項目の追加や削除といった作業を行うことができる。とりあえず、履歴リストを見る、検索するなどは、historyコマンドで対応できる。

「-p」オプションは、履歴展開の結果を調べたい場合に使う。このオプションを付けたとき、単に履歴展開されたコマンドが表示されるだけで、このコマンド自体、履歴リストに入らない。ただし、コマンドラインはすべて実行前に履歴展開が行われるため、引数はシングルクオートでくくる必要がある。履歴展開の"p"修飾子と同じものだ。なお、スペースで区切った引数は出力時には、個別の行として出力される。

「-a」、「-c」、「-r」オプションは、履歴リストの保存、クリア、再読み込みを実行する。

fcコマンドは、Fixコマンドと呼ばれており、簡単にいうと、ヒストリエントリから複数のコマンドを連続実行するためのものだ(表02)。fcコマンドは、範囲指定した履歴リストをエディタに読み込む、編集後にエディタで保存して終了を選択すると、編集した履歴リストが実行される。

-lオプションは、履歴リストを表示するだけの場合に使い、-sオプションは単独のコマンドを履歴リストから選択(コマンド先頭文字列またはコマンド番号)して、実行するときに利用する。
ヒストリ機能を制御するためのシェル変数

ヒストリ機能に関しては、設定により動作を変更することができる。一部の設定では、シェル変数、あるいは環境変数を使う。表03は、ヒストリに関連のシェル変数、環境変数の一覧である。bashのシェル変数、Linuxの環境変数では、大文字小文字が区別されることに注意されたい。シェル変数を定義するには、

<変数名>=<値>

とする。

ヒストリ機能は、基本的にbashの機能なので、設定値としては、シェル変数でかまわない。ただし、環境変数として定義しても問題ない。ログインシェルで使っていると両者の間には、違いはない。子プロセスからさらにbashを起動するといった場合、環境変数であれば、子プロセスにも環境変数が継承されるが、シェル変数の場合、ログインシェルでの設定状態が継承されない場合がある。

この記事に関連するニュース

トピックスRSS

ランキング

複数ページをまたぐ記事です

記事の最終ページでミッション達成してください