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

Windows Subsystem for Linuxガイド 第39回 Bashのヒストリ機能 その1「利用編」

マイナビニュース / 2024年9月24日 12時24分

それぞれのキーに割り当ててある機能は、表右側の関数名で決まる。それぞれ、readlineまたはbashが提供している関数(機能)である。それぞれの関数の解説は、readlineまたはbashのmanページにある。WSLディストリビューションにmanがインストールされているなら、それぞれ「man readline」または「man bash」でmanページが開く。あるいは、bashやreadlineのキーワード(表の提供元参照)とともに関数名をインターネット検索してもよい。

もっとも、簡易には、カーソルキーの上下でイベントを順次表示させ、必要なところでエンターキーで実行する。あるいは、Ctrl+Rキーを押し、過去のコマンドが含む文字を入れていくことで補完が進む。再度Ctrl+Rを打鍵すると、同じ文字で補完できる別のイベントが表示できる。これを使うことで、イベントの検索が可能だ。

Esc nとEsc pは、Escキーを押したのちnまたはpキーを押す。コマンドラインにコロン「:」が表示され、その後、検索文字列を入力して、エンターキーを押せば、ヒストリ機能の検索が行われる。Esc nならば、前方(過去から現在方向)、Esc pならば、後方(現在から過去方向)に検索が行われる。

Esc Tabキーは、コマンドラインにユーザーが入力した文字を使って、ヒストリのイベントによる補完や補完候補表示を行う。たとえば、過去に「echo」コマンドを含むイベントがあれば、コマンドラインに「ec」を入力したあと、Esc pで「echo」が候補として表示される。ただし、補完単位はスペースで区切られたワードに限られる。

Esc ^は、入力中のコマンドに入れたヒストリ展開(後述)を強制的に展開するコマンドだ。これを使うことで、ヒストリ展開がどのように行われるのかを見てからコマンドを実行させることが可能になる。

○ヒストリ展開

ヒストリ展開は、コンピュータの利用が機械式プリンタとキーボードを組み合わせていた「機械式端末装置」が、主に使われていた時代のものだ。出力がプリンタとなるため、上カーソルキーのようにコマンドラインを次々と書き換えていくことができない。このため、打鍵数や出力文字数が少ない方法でのヒストリ実行が考えられた。

たとえば、同一のファイルに対して、複数のコマンドを順次適用する場合がある。たとえば、ファイル編集コマンド(エディタ)とコンパイルコマンドなどを繰り返し実行する場合などだ。このようなとき、

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

トピックスRSS

ランキング

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

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