私はMac OSXで作業しているのでbashを使っているようですが…?
時には歴史に記憶されたくない内容を入力することもあります。どのように削除しますか?
答え1
予防法
履歴に保存せずにコマンドを実行するには、前にスペースを追加します。
prompt$ echo saved
prompt$ echo not saved \
> # ^ extra space
これを行うには、ignorespace
またはignoreboth
いずれかが必要ですHISTCONTROL
。たとえば、次のようにします。
HISTCONTROL=ignorespace
この設定を持続させるには.bashrc
。
剖検後の整理
このコマンドをすでに実行しており、履歴から削除するには、まず次のようにします。
history
履歴コマンドのリストを表示します。削除したい番号(1234など)の横にある番号を見つけて実行します。
history -d 1234
また、削除する行が$ HISTFILEに書き込まれている場合(通常はデフォルトでセッションを終了したときに発生する)、$ HISTFILEを再度記録する必要があります。それ以外の場合は、新しいセッションを開くとその行が再び表示されます。
history -w
答え2
すべての履歴を消去するには、次を使用します。
history -c
単一行を削除するには、次のようにします。
history -d linenumber
答え3
MacのZsh
Zshを使用している場合、history -d linenumber
コマンドライン履歴から特定の行番号を削除することはできません。ただし、履歴ファイルを編集することはできます。端末を閉じて再度開き、次のように履歴を編集します。
nano ~/.zsh_history
バラよりこれ詳細については。
答え4
いつでもアイテムを編集して削除できます。1~/.bash_history
つ以上のアイテムを削除したい場合に便利です。