gpt4 book ai didi

linux - 如何记录每个命令的持续时间/结果并用 `history` 显示此信息?

转载 作者:太空宇宙 更新时间:2023-11-04 05:10:49 24 4
gpt4 key购买 nike

我有一些命令需要很长时间才能运行。我希望能够追踪历史上的所有这些人。

我查看了历史标志,但那些似乎只显示命令启动的时间/日期和状态代码。

最佳答案

部分回答您的问题,这是我的 .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

(改编自contrapuntus.net上的这篇文章Growl upon job completion in zsh)

关于linux - 如何记录每个命令的持续时间/结果并用 `history` 显示此信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55619937/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com