No.005シェル

history

ヒストリー・コマンド履歴表示

知識レベル 基礎注意一般ユーザーで使えるシェルに組み込み

対話的に実行したコマンド履歴を確認、再利用、整理します。Bashでの作業効率と追跡性を高める重要な組み込みです。

答えよく使う形

  1. 直近履歴を確認します
  2. 指定した履歴項目を削除します
  3. 新しく追加された履歴項目を履歴ファイルへ追記します

注意履歴には重要な操作痕跡や機密情報が残りえます。

visitor@goodly: ~

$ echo one echo two history 5

... echo one
  ... echo two

$ history

$ history 20

覚える順番の中で30 コマンド・16 駅め / 30LPIC-1・42 駅め / 106

どんなコマンド?

こんなときに

以前使ったコマンドを探したい時、長いコマンドを再実行したい時、手作業の調査履歴を見直したい時に使います。

historyは、対話的なシェル操作で入力したコマンドの履歴を扱うBash組み込みコマンドです。以前入力したコマンドを一覧表示し、番号で再実行したり、履歴ファイルへ保存したり、一部を削除したりできます。

実務では、以前実行した長いコマンドを再利用したい時、障害調査で自分が直前に何を打ったか確認したい時、手作業で試した処理を手順書やスクリプトへ整理したい時に便利です。

書き方とオプション

組み立ててみるオプションを押すと、下の1行に足されます。もう一度押すと外れます。

$ history

使用例と実行結果

行を押すとコピーできます。

... echo one
  ... echo two
直近履歴を確認します。

まず安全に試す

3分ミッション

手を動かすと覚えやすくなります。できたものに印を付けてください(この端末に残ります)。

0 / 1

つまずいたとき

他の端末で実行した履歴が見えない

原因現在のシェルが履歴ファイルをまだ取り込んでいません。

こうするhistory -nで新規分を読み込みます。

終わったときの数(戻り値)

$ echo $?

  • 0正常終了しました。
  • >0存在しない履歴番号の指定などでエラーになりました。

気をつけることと入れ方

気をつけること

履歴には重要な操作痕跡や機密情報が残りえます。平文パスワードやトークンをコマンド引数へ書く運用は避けるべきです。

シェル(bash など)に組み込まれたコマンドです。入れるものはありません。

環境による違い

historyはBashの履歴機能として扱うのが基本です。POSIX共通の標準コマンドとして前提にしないほうが安全です。

確かめた環境Debian GNU/Linux / 13 / Bash 5.2.372026-04-09 に確認

よくある質問

historyはどのファイルへ保存されますか。

Bashでは通常~/.bash_historyですが、HISTFILEで変更できます。

資格試験では

  • LinuC レベル1大事1.03.1 コマンドラインの操作
  • LPIC-1大事105.1 シェル環境のカスタマイズと利用
  • 共通基礎大事Linuxコマンド基礎

history を最後まで読みました。

Linux コマンド辞典に戻る42 / 144

Goodly のメニュー