機密情報を使用してbashコマンドを実行することがあります。たとえば、シェルスクリプトを実行し、コマンドライン引数としてパスワードを渡します。その場合、セキュリティ上の理由から、bashの履歴をクリアすることをお勧めします。
LinuxでのBash履歴のクリア
bashシェルでコマンドを実行すると、そのコマンドは.bash_history
に保存されます。 ユーザーのホームディレクトリにあるファイル。 history
を使用できます このファイルからすべてのコマンドを出力するコマンド。履歴全体または特定のコマンドをbash履歴から削除するオプションがあります。
1。すべてのコマンドを削除するには、Bash履歴を削除します
bash履歴を完全に削除したい場合は、history -c
を実行できます。 コマンド。
# history ... 737 history 738 vi .bash_history 739 cd 740 history # history -c # history 1 history #
2。 Bash履歴から特定のコマンドを削除する
bash履歴から特定のエントリを削除する場合は、history -d offset
を使用します。 指図。オフセットは、history
の出力からの行番号です。 コマンド。
[root@li1176-230 ~]# ls -1 | wc -l 3 [root@li1176-230 ~]# history 1 history 2 ls 3 cd 4 ls -1 | wc -l 5 history [root@li1176-230 ~]# history -d 4 [root@li1176-230 ~]# history 1 history 2 ls 3 cd 4 history 5 history -d 4 6 history [root@li1176-230 ~]#
MacOSでBash履歴をクリアする方法
プレーンなbashシェルを使用している場合は、-dまたは-cオプションを使用してbash履歴を削除できます。
bash-3.2$ history 1 history 2 cd 3 ls 4 pwd 5 history bash-3.2$ history -d 4 bash-3.2$ history 1 history 2 cd 3 ls 4 history 5 history -d 4 6 history bash-3.2$ history -c bash-3.2$ history 1 history bash-3.2$
ZSHクリア履歴
ZSHは最近非常に人気があります。これはbashシェルの上に構築されており、開発者を支援するための多くの追加機能を提供します。残念ながら、上記の履歴コマンドはZSHシェルの履歴をクリアするためには機能しません。これは、ZSH履歴が~/.zsh_history
に保存されているためです。 ファイル。エントリを削除する場合は、VIMまたはその他のエディタでこのファイルを開き、ファイルからエントリを手動で削除して保存します。
注 :セッションの開始時にzsh履歴が読み込まれるため、.zsh_historyファイルへの変更は現在のシェルセッションに反映されません。新しいウィンドウまたはタブを開いて新しいシェルを起動すると、変更に気付くでしょう。