実行中のシステムプロセス(例:netstat、syslog、arpなど)のデータを取得するためにbashファイルを実行しています。歴史を除いて、すべてがうまくいった。履歴をテキストファイルとして保存しようとしています。
cp ~/. bash_history $path/filename.txt
残念ながら、これは私に完全な歴史を提供しません。コマンドを手動で入力する場合
history > /media/root/usb/filename
私は全く異なる結果を得ました。私の目標は、1つのbashファイルからプロセス全体を自動化することです。これを行う方法はありますか?そして、記録の日時も知りたいです。
ベストアンサー1
@Jesse_bが述べたように、.bash_history
現在のセッションを除くすべての以前のシェルセッションを含む履歴は、コマンドで確認できますhistory
。したがって、まず次のように現在の履歴を更新する必要があります。
history -a
その後、別のファイルにコピーできます。
cp ~/.bash_history $path/filename.txt
各履歴項目の前にタイムスタンプを追加するには、$ HISTTIMEFORMAT変数を設定してください。
HISTTIMEFORMAT="%F %T: "