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

LinuxとMacでBashの履歴をクリアする方法

機密情報を使用して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ファイルへの変更は現在のシェルセッションに反映されません。新しいウィンドウまたはタブを開いて新しいシェルを起動すると、変更に気付くでしょう。


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

  2. LinuxターミナルプロンプトでBashの色とコンテンツをカスタマイズする方法

  3. LinuxでのBash履歴の解析

  1. LinuxでBASHコマンドライン履歴をクリアする方法

  2. LinuxでBashの履歴をクリアする方法

  3. Linuxでメモリキャッシュをクリアする方法

  1. LinuxでBashプロンプトをカスタマイズする方法

  2. LinuxでBashの履歴から特定のコマンドをクリアする方法

  3. LinuxでBashプロンプトを短縮する方法は?