Exec_logg

Jag har en rätt omfattande samling exekverbara filer jag skrivt vid något tillfälle. Jag skulle behöva veta vilka jag egentligen använder.

Tack vara bytet från bash till zsh.. så har jag inbyggd pre-exec hook.

Kommandot går igenom och matchas mot två PATHS. Återfinns kommandot som exekverbar fil, så loggas kommandot med tidskod.

Detta fick den lustiga konsekvensen att jag kan använda \cmd för att cmd inte ska loggas. Precis samma sätt som man skippar alias.

Nästa steg: ruby-script med table-tennis; hantera lite argument:

  • --top N (default: --top 10)
  • --from 'datestring'
  • --to 'datestring'
  • --graph
  • --group day|week
  • --aggregate
  • pattern
> tool_usage.rb
╭────────────────────────────╮
│    Tool Usage (top 10)     │
├────┬───────────────┬───────┤
│  # │ tool          │ count │
├────┼───────────────┼───────┤
│  1 │ tool_usage.rb │     4 │
│  2 │ tool_usage    │     2 │
│  3 │ xa-get        │     2 │
│  4 │ xa-ls         │     1 │
│  5 │ xa-set        │     1 │
╰────┴───────────────┴───────╯

> tool_usage.rb --aggregate '^xa-'
╭───────────────────╮
│ Tool Usage (top … │
├────┬──────┬───────┤
│  # │ tool │ count │
├────┼──────┼───────┤
│  1 │ xa-* │     4 │
╰────┴──────┴───────╯