![根据系统正常运行时间计算工作时间](https://linux22.com/image/1245636/%E6%A0%B9%E6%8D%AE%E7%B3%BB%E7%BB%9F%E6%AD%A3%E5%B8%B8%E8%BF%90%E8%A1%8C%E6%97%B6%E9%97%B4%E8%AE%A1%E7%AE%97%E5%B7%A5%E4%BD%9C%E6%97%B6%E9%97%B4.png)
我知道有几种可以追踪不同任务/项目所花费时间的工具。
是否存在任何现有的工具可以非常简化工作时间跟踪。
设想:
我是一名员工,一到办公室就直接打开笔记本电脑。我午餐时间大多在 1 小时左右,但有时更少,有时更多。
大约 18:00 时,我想在控制台中输入一个命令(当然,简单的 GUI 也可以),该命令告诉我:
“1小时超负荷工作了。赶紧回家吧!(8点来的,1小时标准午休时间)。”
也许可以有一些参数
mytool-午餐 2
“还剩 0 小时。现在回家!(8:00 来,2 小时午休时间)。”
已经存在这么简单的事情了吗?
应该在 Linux、COmmandline 上运行,也许只是一个 bash 或 python 脚本。
编辑:Akira 的解决方案-谢谢!
$ mytool 2 | figlet _ __ _ ___ | |__ ___ _ __ ___ ___ / _` |/ _ \ | '_ \ / _ \| '_ ` _ \ / _ \ | (_| |(_)| | | | |(_)| | | | | | __/_ \__,|\___/ |_| |_|\___/|_| |_| |_|\___(_) |___/ __ __________ __ _____ _____ _ __ __| |_ _ ___ |___ /___ / / /_ / _ \ \ / / _ \ '__/ _` | | | |/ _ \ |_ \ |_ \| '_ \ | (_)\ V / __/ | | (_| |_| | __/ ___)|__)| (_)| \___/ \_/ \___|_| \__,_|\__,_|\___| |____/____/ \___/ _ ___ ___ ___ ___ _ __ __| |___ / __|/ _ \/ __/ _ \| '_ \ / _` / __| \__ \ __/ (_| (_) | | | | (_| \__ \_ |___/\___|\___\___/|_| |_|\__,_|___(_)
答案1
bash(放入你的~/.bashrc
):
函数 mytool() { # ${1-0} 表示:取第一个参数,或假设为 0,如果 # 没有给出参数 MAX="$(( (8 + ${1-0}) * 3600))" # $1 包含额外的小时数 UP=`cat /proc/uptime | sed's/\..*//'` 如果(($UP > $MAX)) 然后 echo "回家。已逾$(( $UP - $MAX )) 秒。" 菲 }
就叫它这样mytool 2
。
或者 .. awk (只是为了好玩):
awk -v lunch=2 'BEGIN { max=(8 + lunch) * 3600;} { if ($1 > $max) print "overdue " ($1 - max) / 3600.0 " hours"; }' /proc/uptime