Linuxコマンドライン履歴を削除する必要があるのはなぜですか?
ほとんどの場合、Linuxシステム上の他のユーザーの端末履歴を公開したくありません。たとえば、ラボのコンピュータで生徒にクラスを提供していて、有害なコマンドを教えた可能性があり、システムでの使用が推奨されていない場合です。しかし、ほとんどの学生は、これらの重要なコマンドの副作用については考えていません。好奇心旺盛な学生は、コマンドラインの履歴を検索してテストし、各コマンドの動作を確認できます。システムが何度もクラッシュする可能性があります。ただし、システムをすばやく修復または再インストールできます。しかし、それは良い習慣ではありません。したがって、この場合は、作業後にコマンドライン履歴をクリアすることをお勧めします。特に、友達や同僚とアクセスを共有している場合。簡単な例で詳しく説明しました。 Linuxコマンドライン履歴をクリアしたい他の問題がある可能性があります。この記事では、Linuxシステムでコマンドライン履歴をクリアする方法のデモを提供します。
この記事では、Ubuntu20.04ターミナルアプリケーションですべてのコマンドを実行しました。したがって、システムでターミナルウィンドウを開く必要があります。システムのデスクトップの左隅にある[アクティビティ]をクリックし、アプリケーションの検索バーを使用して、「ターミナル」キーワードを検索します。検索が完了したら、ターミナルアイコンをクリックして起動します。
Linuxコマンドライン履歴の削除
ターミナルコマンドの履歴を表示する場合は、ターミナルで次のコマンドを入力します。
$歴史
通常、コマンドライン履歴は「bash_history」という名前のファイルに保存されます。このファイルは、特定のユーザーのホームディレクトリ/home/username/.bash_historyにあります。以下のコマンドを実行して、bash_historyファイルを見つけます。
$ls -NS /家/きしむ/.bash_history
ノート: rootユーザーは、システム上のすべてのユーザーのコマンド履歴を監視できます。ただし、標準ユーザーは自分のコマンドライン履歴しか表示できません。
bash履歴から行を削除します
bash履歴ファイルから1行だけを削除する場合は、historyコマンドで-dオプションを使用して、削除する対象の行番号を入力できます。
たとえば、プレーンテキストでパスワードを入力したパスワードを含むコマンドをクリアしたいとします。次のコマンドを実行すると、履歴ファイルで行番号を簡単に見つけてクリアできます。
$歴史 -NS 355
bash履歴からすべてのコマンドを削除またはクリアします
bash履歴ファイルからすべてのエントリをクリアまたは削除することもできます。したがって、historyコマンドでオプション-cを使用します。ターミナルで次のコマンドを実行して、すべてのbash履歴をクリアまたは削除できます。
$歴史 -NS
または、次のコマンドを実行することで、bash履歴ファイル内の最後に実行されたコマンドのすべての履歴を完全に削除または削除できます。
$猫 /開発者/ヌル>>〜/.bash_history
結論
この記事では、historyコマンドと、それをクリアする必要がある理由についての理解を深めました。上記のすべてのコマンドから、システムの履歴を簡単にクリアできることを願っています。ただし、bash履歴ファイルに記録されているすべてのコマンドを端末で実行することを常に忘れないでください。したがって、Linuxコマンドラインでプレーンテキスト形式のパスワードを使用しないことをお勧めします。この記事に関する質問や考えがあれば、私たちとアイデアを共有してください。