どのような状況で、ユーザーはシェルにコマンドを履歴に記録させないでしょうか?


18

を追加するexport HISTCONTROL=ignorespace.bashrc、bashは空白がコマンドの前にあるコマンドを履歴に記録しません。しかし、私はそれがどのような状況で役立つか理解していません。誰でもいくつか例を挙げることができますか?

回答:


32

コマンドにパスワードまたはその他の機密情報が含まれている場合


4
@acgtyrantの場合、パスワードを使用してコマンドを入力したことはありません。アイデアは、あなただけのコマンドの前にスペースを入れてコマンドラインでパスワードを提供する場合で、それはに記録されませうHISTFILE
ウルリッヒDangel

3
mysqlコマンドは、データベースに接続しているユーザーのパスワードを受け入れることができます。ここにリストするには多すぎます。@Ulrich Dangelが作ったポイントがスポットです。パスワード付きのコマンドを入力する場合は、それらを履歴に残さないでください。
slm

5
また、あなたが管理者である場合、攻撃者がシステムに侵入した場合、物事がどこにあるのか、どのようなコマンドの種類の痕跡を残しているので、多くの場合、履歴は必要ありません通常、ボックスで実行されます。
slm

1
機密情報を含むコマンドがない場合は、その機能の対象ユーザーではありません。プログラムのすべての機能がすべてのユーザーによって使用されるわけではありません。(これがプログラムに「機能クリープ」がある理由の1つです。誰もが1ダースの機能を使用しますが、異なるダースの機能を使用し、他のすべての役に立たないクラフトが何のためにあるのか疑問に思います。)
カズ

1
コマンドライン引数は、で表示されるpsか、で表示されることが多いことに注意してください/proc。一部のシステムは、環境を他のユーザーにも見えるようにします。tmpfs、OTOH上のモード0700ファイルには、これらの問題はありません。
デロバート

26

別の使用方法は、誤って繰り返したくないコマンドなどrm -rf *です。履歴を広範囲に使用しており、履歴Enterから取得したコマンドが探していたコマンドではない場合に、偶発的にヒットします。確かに、実際の解決策は、コマンドを実行する前に常に注意深く読むことです。しかし、少し不器用なので、特別な予防策として、特に破壊的なコマンドを履歴から除外することを好みます。


14
スペースを含めるのを忘れた場合でも、いくつかの危険なコマンドをさらに無視することが非常に便利であることがわかりましたHISTIGNORE=" *:rm -f*:rm -r*:*--force*"。これによりrm -f、にrm -r含まれるすべてのものと同様に、履歴に保存されなくなり--forceます。
ペトルスキー-パドラック

これが/実際のソリューションです。ナイフを置いたままにしないでください。本当の解決策はナイフで自分を突かないことだと言ってください。古いことわざにあるように、「あなたは川のほぐしはできません」、つまり川をきれいにしないで、代わりにゴミを捨てないでください。
ctrl-alt-delor 14年

6

私の元同僚は、ほとんどのコマンドcdとこれを使用してls、「有用な」コマンドのみを記録しました。


3
私はこれを行わずに
職場でネットハックを

実際には、誰かが追加export HISTCONTROL=ingoredups.bashrcてbashに重複を保存しないように指示して、履歴をより明確にすることができます。この記事
-acgtyrant

2

データのプライバシー。法執行機関があなたのドアを壊した瞬間、あなたは彼らが

  • 最新のpron ^ Wwarezを入手する場所
  • 最近リッピングして急流に送った映画
  • 引数を介して暗号化/復号化プログラムに渡されるパスワード

真剣に、それはおそらくあなたのブラウザの厳しいプライバシー設定に相当し、サーフィンの履歴を記録するのを止めます。


0

.bash_historyバージョン管理する場合、特定のコマンドを「特別」としてマークする便利な方法です。history-search- *と組み合わせると、Space+ m+ Up+ を押しEnterて実行しmake --directory ~/dev/tilde cleanSpace+ e+ Up+ Enterを押して実行editor ~/.bash_historyすることができます。どちらもBash履歴ファイルのメンテナンスに使用します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.