我有一些命令需要很长时间才能运行。我希望能够跟踪所有这些历史记录。
我已经查看了历史标记,但是这些标记似乎仅显示命令启动的时间/日期和状态代码。
答案 0 :(得分:0)
部分回答您的问题,这是我在.zshrc
中拥有的一项功能,当命令花费10秒钟以上时,它会发送桌面通知。
您可以适应构建自己的历史记录文件。
(要获得通知,您必须具有通知发送或改编$notifier
)
notifier=notify-send
if [[ ${TERM[1,5]} == xterm ]]; then
preexec() {
notifiable_cmd=$1
notifiable_start_time=`date +%s`
}
precmd() {
if (( $? == 0 )); then
notifiable_status="Success in "
else
notifiable_status="Failed in "
fi
if [[ "$notifiable_cmd" != "" ]]; then
(( notifiable_time = `date +%s` - $notifiable_start_time ))
if [[ $notifiable_time -ge 60 ]]; then
notifiable_str_time="$(($notifiable_time%100000/60)) min $(($notifiable_time%60)) s"
else
notifiable_str_time="$notifiable_time[1,5] s"
fi
if [[ $notifiable_time -gt 10 ]]; then
$notifier $notifiable_cmd "$notifiable_status $notifiable_str_time"
fi
fi
notifiable_cmd=
}
fi
(改编自converses.net上的这篇文章Growl upon job completion in zsh)