2017/04/07 追記

こちらでワンライナーでのやり方を記述したので、こっちの方がわかりやすい+使いやすいかも。


LinuxやUNIXにおいて、ターミナルコンソールでの操作内容を残すのに都合の良いscriptコマンドだが、残念ながらそのコマンドがいつ実行されたのかは記録されない。
scriptコマンドで記録したログにタイムスタンプを付与するにはscriptコマンド単体ではなく、記録しているログにタイムスタンプを追記して出力させる必要がある。以前記述した、scriptコマンドの内容をsyslogで管理させる方法と同じような手法を取る必要がある。

具体的には、各ユーザーの「.bash_profile」などに以下の内容を追記する。

SCRIPT_FILE="script_`date +%Y%m%d_%H%M%S.log`"
touch $HOME/.$SCRIPT_FILE
tail -F $HOME/.$SCRIPT_FILE | awk '{ print strftime("%Y/%m/%d %H:%M:%S") " " $0 } {system (" ")}' > $HOME/$SCRIPT_FILE &
SCRIPT_PROCESS=&!
script -fq $HOME/.$SCRIPT_FILE
kill $SCRIPT_PROCESS &
rm -f $HOME/.$SCRIPT_FILE &
exit

これで、ホームディレクトリ配下にタイムスタンプ付きの操作ログが記録されるようになる。