すべての端末のすべてのbashコマンドを単一のファイルとして保存する方法はありますか? [コピー]

すべての端末のすべてのbashコマンドを単一のファイルとして保存する方法はありますか? [コピー]

すべての端末のすべてのbashコマンドを単一のファイルとして保存する方法はありますか?基本的に端末ごとに記録が異なるため、混乱することがあります。これらのコマンドを見つけるためのオプションを使用して、すべての履歴をファイルに保存したいですか?shiftたぶん+はuparrow中央ファイルの履歴を見ることができますか?

答え1

まず、シェルプロンプト(必要に応じて値を設定する)行で、次のコマンドを使用して各ユーザーの履歴に時間とユーザー名を追加し、各履歴ファイルのサイズ(デフォルトは500)を拡張するようにシェルに指示する必要があります。 )、そして

echo 'HISTTIMEFORMAT="%F %T $USER"' >> ~/.bashrc && HISTSIZE=10000

その後、再起動して変更を有効にします。なぜ?まあ、日付と時刻がなく、誰がコマンドを入力したかを識別できないレコードはあまり役に立ちません。

そして、定期的に各ユーザーの ~/.bash_history の内容を統合履歴ファイルにコピーしてソートすることで、統合履歴は日付、時刻、ユーザー別にソートされます。

これが完了したら、管理レベルのスクリプトを繰り返して、各ユーザーディレクトリのソースファイルを削除します。

cd /home/userx && rm ~/.bash_history && history -c

変化X各ユーザーに対してこの行を実行します。

関連情報