端末を閉じたときにbashの履歴を消去するには? [コピー]

端末を閉じたときにbashの履歴を消去するには? [コピー]

KDE Konsoleをbash端末として使用端末(タブ/アプリケーション)を閉じるときに記録を消去したいと思います。 Konsoleが開いている間にbashレコード(検索のため)が必要であることに注意してください。端末が閉じました。その後、クリアしてください。

端末を長期間使用することが多く、端末を閉じる前に記録を消去していますが、自動的に記録を消去する方法を探しています。

履歴を消去する方法や無効にする方法についても同様の質問がありました。履歴を保存せずに端末を閉じる方法は?しかし、私の状況に役立つものは何もありません。ここでの違いは、端末で実行するときに履歴ファイルが必要であることです。unset HISTFILEコマンドの実行後に履歴ファイルの無効化を設定しましたが、そうではありません。明らか歴史的文書そのもの。履歴ファイルはセッションの実行中に必要ですが、セッションが閉じられたときに消去する必要があります。

ターミナルが閉じたときにbashの履歴を消去するには?

答え1

  1. 削除.bash_history

    cat /dev/null > .bash_history
    

    または

    >.bash_history
    
  2. トラップを追加する.bashrc

    trap "history  -c" EXIT
    

答え2

ファイルを使用して、ログアウト時に実行する必要があるコマンドを指定できます.bash_logoutここより多くの情報を知りたい場合)。

答え3

このbash文書(参考資料を参照man bash)には、歴史に関する情報が含まれています。

シェル変数次の変数はシェルによって設定されます。

[...]

HISTFILEコマンド履歴が保存されるファイル名[...]。デフォルト値はです~/.bash_history。設定しないと、シェル終了時にコマンド履歴は保存されません。

したがって、セッション中にコマンドの記録を許可するが保存しないようにするには、この変数をオフにするだけです。または一部または全部でこれを行うことができます.bash_profile.profile.bashrc

unset HISTFILE

答え4

export HISTFILE=/dev/null

それは古代の歴史を変えません。 .bash_historyで共有したくないパスワードやその他のデータを誤って入力した場合に便利です:-)

関連情報