[Linux] historyに履歴を残さない方法
先に結論
HISTCONTROL=ignorespace をコマンドラインに打ち込み、先頭にスペースを1つ入れて実行すると、入力したコマンドが履歴に残らなくなる。
例
# 通常のコマンド入力cd ./hoge
history>> 1 cd ./hoge # 履歴に残ってしまう>> 2 history
# ここから履歴を残さない手順開始
# 1. オプションを有効にするHISTCONTROL=ignorespace
# 2. コマンド実行の際、先頭に1つスペースを入れる cd ./hoge2
history>> 1 cd ./hoge>> 2 history>> 3 history# cd ./hoge2 のコマンドが履歴に残らなくなる
# スペースを入れずに実行cd ./hoge3
history>> 1 cd ./hoge>> 2 history>> 3 history>> 4 cd ./hoge3 # スペースを入れずに実行すると、履歴が残る>> 5 historyなぜ履歴を残したくないのか?
Linuxには、過去のコマンドを参照するコマンドとして、historyコマンドが存在する。 これを実行すると、過去に打ち込まれたコマンドをすべて把握することができ、便利なのだが、共有のLinuxサーバーであったり、Dockerで作成したコンテナの中で、自身が打ち込んだコマンドが他人に丸見えなのはとても気持ちが悪い。だから、この方法を調べた。
ちなみに、historyに残ってしまった履歴を全てクリアしたいときは、history -c を打ち込む。