home
/
code
/
khome.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
94df2de
)
Group shell activity by month
author
Siraaj Khandkar
<siraaj@khandkar.net>
Sun, 22 Dec 2019 16:55:18 +0000
(11:55 -0500)
committer
Siraaj Khandkar
<siraaj@khandkar.net>
Sun, 22 Dec 2019 16:55:18 +0000
(11:55 -0500)
home/lib/login_functions.sh
patch
|
blob
|
blame
|
history
diff --git
a/home/lib/login_functions.sh
b/home/lib/login_functions.sh
index
87746c6
..
2287d32
100644
(file)
--- a/
home/lib/login_functions.sh
+++ b/
home/lib/login_functions.sh
@@
-6,28
+6,51
@@
d() {
}
shell_activity_report() {
}
shell_activity_report() {
+ # TODO: optional concrete number output
+ # TODO: manual weekday calc (since forking date is so expensive)
+ # TODO: optional combinations of granularities: hour, weekday, month, year
history \
| awk '
{
history \
| awk '
{
+ # NOTE: $2 & $3 are specific to oh-my-zsh history output
+ date = $2
time = $3
time = $3
- ok = split(time, t, ":")
- if (ok) {
- hour = t[1] + 0 # Coerce number from string
- cnt = count[hour]++
+ d_fields = split(date, d, "-")
+ t_fields = split(time, t, ":")
+ if (t_fields && d_fields) {
+ # +0 to coerce number from string
+ month = d[2] + 0
+ hour = t[1] + 0
+ c = count[month, hour]++
}
}
- if (c
nt
> max)
- max = c
nt
+ if (c > max)
+ max = c
}
}
- END {
+ END {
+ m[ 1] = "January"
+ m[ 2] = "February"
+ m[ 3] = "March"
+ m[ 4] = "April"
+ m[ 5] = "May"
+ m[ 6] = "June"
+ m[ 7] = "July"
+ m[ 8] = "August"
+ m[ 9] = "September"
+ m[10] = "October"
+ m[11] = "November"
+ m[12] = "December"
+ for (month = 1; month <= 12; month++) {
+ printf "%s\n", m[month];
for (hour=0; hour<24; hour++) {
for (hour=0; hour<24; hour++) {
- c = count[hour]
- printf "%2d ", hour
- for (i
=1; i<=((c * 100) / max)
; i++)
+ c = count[
month,
hour]
+ printf "
%2d ", hour
+ for (i
= 1; i <= (c * 100) / max
; i++)
printf "|"
printf "\n"
}
printf "|"
printf "\n"
}
- }'
+ }
+ }'
}
top_commands() {
}
top_commands() {
This page took
0.026481 seconds
and
4
git commands to generate.