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

Linuxでhistoryコマンドを使用する方法

ターミナルセッションに費やす時間が増えるにつれ、日常業務をより効率的にする新しいコマンドを継続的に見つけているように感じます。 GNUhistory コマンドは私の仕事の日を本当に変えたものです。

GNUhistory commandは、そのターミナルセッションから実行された他のすべてのコマンドのリストを保持し、それらのコマンドを再入力する代わりに、それらのコマンドを再生または再利用できるようにします。経験豊富な端末ユーザーであれば、historyの威力をご存知でしょう。 、しかし私たちにとっては、ダブラーや新しいシステム管理者にとっては、history すぐに生産性が向上します。

まず、history コマンドは実際にはコマンドではありません。システムでコマンドを探すことで、これを自分で確認できます:

$ which history
which: no history in (/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin)

コンピュータがhistoryを見つけることができません シェルの組み込みキーワードであるため、コマンド。使用しているシェルに書き込まれるため、Bash、tcsh、Zsh、dash、fish、kshなどを使用しているかどうかによって、履歴の動作に多少の違いが生じる可能性があります。この記事は履歴のBash実装に基づいているため、一部の関数は他のシェルでは機能しない可能性があります。ただし、基本的な機能のほとんどは同じです。

ヒストリー101

historyを表示するには 実際には、Linuxインストールでターミナルプログラムを開き、次のように入力します。

$ history

これが私が得た応答です:

1  clear
2  ls -al
3  sudo dnf update -y
4  history

history commandは、セッションの開始以降に入力されたコマンドのリストを表示します。 historyの喜び これで、次のようなコマンドを使用して、それらのいずれかを再生できるようになりました。

$ !3

!3 プロンプトのコマンドは、履歴リストの3行目でコマンドを再実行するようにシェルに指示します。次のように入力して、そのコマンドにアクセスすることもできます。

$ !sudo dnf

これにより、historyが表示されます 指定したパターンに一致する最後のコマンドを検索します(この場合、そのパターンは dnf です )そしてそれを実行します。

検索履歴

historyを使用することもできます !!と入力して、最後に入力したコマンドを再実行します 。 grepとペアリングする 、テキストパターンに一致するコマンドを検索するか、tailで使用することができます 、最後に実行したいくつかのコマンドを見つけることができます。例:

$ history | grep dnf
3  sudo dnf update -y
5  history | grep dnf

$ history | tail -n 3
4  history
5  history | grep dnf
6  history | tail -n 3

この検索機能を利用するもう1つの方法は、Ctrl-Rと入力することです。 コマンド履歴の再帰検索を呼び出します。これを入力すると、プロンプトは次のように変わります。

(reverse-i-search)`':

これで、コマンドの入力を開始できます。 Return を押すと、一致するコマンドが表示され、実行できるようになります。 または入力

実行されたコマンドの変更

historyを使用することもできます 異なる構文でコマンドを再実行します。 historyで履歴を修正できます 。たとえば、前のコマンドを変更したい場合は、history | grep dnf history | grep ssh 、プロンプトで次を実行できます:

$ ^dnf^ssh^

コマンドは再実行されますが、dnfが使用されます sshに置き換えられました 。つまり、次のコマンドが実行されます:

$ history | grep ssh
履歴の削除

履歴ファイル内の一部またはすべてのコマンドを削除したい場合があります。特定のコマンドを削除する場合は、history -d <line number>と入力します。 。履歴ファイルの内容全体をクリアするには、history -cを実行します。 。

履歴ファイルは、変更可能なファイルに保存されます。 Bashシェルのユーザーは、ホームディレクトリで.bash_historyとして検索します。 。

次のステップ

historyでできることは他にもたくさんあります :

  • 履歴バッファのサイズを特定のコマンド数に設定します
  • 履歴の各行の日付と時刻を記録します
  • 特定のコマンドが履歴に記録されないようにする

historyの詳細については コマンドやそれを使ってできるその他の興味深いことについては、履歴の解析、履歴検索修飾子、およびGNUBashマニュアルに関するSethKenlonの記事をご覧ください。


この記事は2018年6月に最初に公開され、編集者によって追加情報で更新されました。


Linux
  1. Linuxgrepコマンドの使用方法

  2. LinuxでSuコマンドを使用する方法

  3. Linuxでidコマンドを使用する方法

  1. Linuxでsudoコマンドを使用する方法

  2. Linuxをコマンドで使用する方法

  3. Linux で「screen」コマンドを使用する方法

  1. Linuxでlocateコマンドを使用する方法

  2. Linuxの履歴コマンドの使用方法

  3. Linuxxargsコマンドの使用方法