HISTCMDは異常な動作を示していますが、決してリセットしないことをお勧めします(すべての設定ファイルを確認しました)。したがって、プロンプトが表示される前に誤って入力したパスワードを含むエントリを削除することはできません。 "history -c"は明らかに何もしません。
alex@Freesia:~$ echo $HISTCMD
916352
alex@Freesia:~$ echo $HISTCMD
931399
alex@Freesia:~$ history | tail
[...]
946443 2020-10-30-12:55history -d 871209
946444 2020-10-30-12:55history | tail
946445 2020-10-30-12:56echo $HISTCMD
946446 2020-10-30-12:56history | tail
alex@Freesia:~$ history -d 946444
bash: history: 946444: history position out of range
私のHIST変数:
alex@Freesia:~$ env | grep HIST
HISTIGNORE=?:??
HISTCONTROL=ignoreboth
HISTTIMEFORMAT=%Y-%m-%d-%H:%M
HISTSIZE=2000
HISTFILESIZE=15000
Linux フリージア 4.9.0-13-amd64 #1 SMP Debian 4.9.228-1 (2020-07-05) x86_64 GNU/Linux
ベストアンサー1
@terdonが提案したように、PROMPT_COMMANDは犯人です。誤っていくつかのコマンドラインを失った後、私は次のガイドラインを使って「永遠の歴史」プログラムを実装しました。https://debian-administration.org/article/543/Bash_eternal_history。結局この方法の使用をやめましたが、まだ
PROMPT_COMMAND="history -a;history -r"
上記のページで推奨される内容はまったくありません。