監査ファイルを作成しようとしています。history
これを使用して実行されたコマンドを表示できることがわかりました。
特定のコマンドがチュートリアルに表示されないようにするなど、タイムスタンプやその他の機能を表示するように変更できますが、チュートリアルのように動作しないことがわかりました。
時間を追加:
export HISTTIMEFORMAT='%F %T '
ls、pwd、cd、および日付を削除する必要があります。
export HISTIGNORE='ls:pwd:date:cd:'
次のコマンドを入力した後の履歴出力:
2077 2020-04-30 11:47:25 export HISTIGNORE='ls:pwd:date:cd:'
2078 2020-04-30 11:47:33 cd ..
2079 2020-04-30 11:47:41 history
2080 2020-04-30 11:48:25 cd a2
2081 2020-04-30 11:48:32 cd a2
2082 2020-04-30 11:48:38 history
古いチュートリアルを見ているのでしょうか、それともコマンドを混乱させましたか?
答え1
HISTIGNOREパターンには以下が含まれているため、コマンドcd
は無視されません。cd
バッシュマニュアル部分的には次のように言いますHISTIGNORE
。
各パターンは行の先頭に固定され、行全体と一致する必要があります(暗黙の「*」は追加されません)。
表示されたケースに対処するためにcd
AND cd *
(およびls
AND)を含めるようにHISTIGNOREを設定することに興味があるかもしれません。ls *
答え2
あなたは試すことができます:
/etc/profile は読み取り専用なので、編集可能モードで開きます。
次の2つの変数を定義し、ファイルを保存します。
HISTTIMEFORMAT='%d-%m-%y %T'
HISTIGNORE='ls:pwd:日付:cd'
- ソース/ライト/プロフィール
これはグローバルに機能します。ユーザーにのみ適用するには、~/.bash_profileで同じ手順に従ってください。
幸運を祈る