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

Linuxターミナルの履歴をバックアップおよび復元する方法

Linuxターミナルには、「履歴」と呼ばれる便利な機能があります。ターミナルに入力されたすべてのコマンドは、「。bash_history」というファイルに保存されます。履歴ファイルはユーザーごとに作成され、ユーザーのホームディレクトリにあります(例:「/ home / username / .bash_history」)。

履歴ファイル「.bash_history」は特別な権限で保護されていないことに注意してください。そのため、そのLinuxシステムにアカウントを持っているユーザーは、他のユーザーの履歴ファイルを見ることができます。

端末履歴のバックアップと復元

最初のセクションでは、Linuxターミナル履歴ファイルをバックアップする方法について説明します。その後、それらのバックアップを復元する方法を説明します。

履歴ファイルの内容を表示する

手順1.履歴ファイルの内容を一覧表示するには、次のいずれかの方法を使用できます。

最初の方法は、次のように「cat」コマンドを使用することです。

cat /home/hendadel/.bash_history

2番目の方法では、次のように、historyコマンドを使用して履歴ファイルのコンテンツをプレビューできます。

history

ステップ2.次のいずれかの方法で「grep」コマンドを使用して履歴を検索できます。

最初の方法では、「。bash_history」ファイルでコマンド「kill」を次のように検索します。

cat /home/hendadel/.bash_history | grep 'kill'

以下のスクリーンショットでわかるように、コマンドは「kill」という単語を含むすべてのコマンドを一覧表示します。

履歴を検索する2番目の方法は、次のように「grep」コマンドと「history」コマンドを使用することです。

history | grep 'kill'

バックアップ履歴ファイル

ステップ1.Linux端末履歴ファイルからバックアップを作成するには、次のいずれかの方法を使用できます。

最初の方法は、「>」記号とともに「cat」コマンドを使用することです。これにより、出力がバックアップファイルにリダイレクトされます。

cat /home/hendadel/.bash_history > history_backup

次のスクリーンショットでわかるように、バックアップファイルを作成する必要があります。

2番目の方法は、「history」コマンドを「>」記号とともに使用することです。

history > history_backup2

手順3.別のユーザーに属する履歴ファイルへのバックアップを実行するには、次のコマンドを使用できます。

cat /home/admin/.bash_history > admin_history_backup

特定の履歴コマンドのバックアップ

手順1.履歴ファイルから特定のコマンドをバックアップするには、次のいずれかの方法を使用できます。

最初の方法は、「>」または「>>」記号とともに「grep」コマンドを使用することです。前の記号の違いは次のとおりです。

  • >:この記号を使用すると、ファイルの内容が毎回上書きされます。
  • >>:ただし、この記号は、ファイルを上書きすることなく、作成済みのファイルに出力を追加します。
cat /home/hendadel/.bash_history | grep 'kill' >> history_backup

2番目の方法は、「history」コマンドと「grep」コマンドを「>>」記号とともに次のように使用することです。

history | grep 'kill' >> history_backup2

ステップ2.別のユーザー履歴から特定のコマンドをバックアップする必要がある場合は、次のコマンドを使用できます。

cat /home/admin/.bash_history | grep 'sudo' >> admin_history_backup

現在のユーザーの履歴バックアップファイルを復元する

手順1.履歴バックアップファイルを復元するには、ホームディレクトリにある元の履歴ファイル「.bash_history」を次のように削除するだけです。

rm /home/hendadel/.bash_history

手順2.「mv」コマンドを使用して履歴バックアップファイルをホームディレクトリに移動します。

mv history_backup /home/hendadel/.bash_history

ステップ3.履歴バックアップファイルを移動した後、次のコマンドを使用して履歴を再ロードする必要があります。

history -r

これで、前述のコマンドの1つを使用して履歴をプレビューできます。

他のユーザーの履歴バックアップファイルを復元する

手順1.別のユーザーの履歴バックアップファイルを復元する必要がある場合は、次のコマンドを使用してアカウントをそのユーザーに切り替える必要があります。

su admin

手順2.正常にログに記録したら、現在の履歴ファイルを削除します。

rm /home/admin/.bash_history

ステップ3.次に、履歴バックアップファイルを新しい場所に移動しましょう。

mv /home/hendadel/admin_history_backup /home/admin/.bash_history

手順4.次のコマンドを使用して履歴を再読み込みします。

history -r

今のところ以上です。


Linux
  1. LinuxターミナルでJSONファイルをきれいに印刷する方法

  2. Linuxで出力をファイルとStdoutにリダイレクトする方法

  3. 不正なバックアップ/復元後の Linux ext4 復元ファイルとディレクトリのアクセス権

  1. LinuxでSVNリポジトリをバックアップおよび復元する方法

  2. NFSとは何ですか?Linuxにインストールする方法

  3. PostgreSQLでデータベースをバックアップおよび復元する方法

  1. Linux端末の機能とパフォーマンスのバランスをとる方法

  2. Linuxでファイルシステムをマウントおよびアンマウントする方法

  3. Linux で端末履歴を削除する