Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sysdash

CI Shellcheck License

Живой системный дашборд в чистом bash. Без зависимостей — только bash 4+ и стандартные утилиты.


╭─ sysdash  14:32:07 · обновление 1s · q — выход
╰────────────────────────────────────────────
 CPU    23.4%  ██████░░░░░░░░░░░░░░░░░░
 MEM    61.2%  ███████████████░░░░░░░░░ 9.8G / 16.0G
 DISK   44.0%  ██████████░░░░░░░░░░░░░░ 211.5G / 476.9G
 NET   ↓ 1.2 MB/s  ↑ 184 KB/s
 LOAD  0.83 0.71 0.66    UPTIME 3d 4h 12m

 TOP 5 процессов по CPU
 412    node              18.2%
 1204   chrome             9.7%
 ...

Возможности

  • 🖥 CPU / MEM / DISK / NET / LOAD / UPTIME / BAT — цветные полоски с пороговой раскраской
  • 🧠 Парсинг /proc напрямую — без top/vmstat, дельты между кадрами
  • 🔝 Топ процессов по CPU
  • 📏 Адаптация под ширину терминала, q для выхода, чистый выход по trap
  • 🐧 Linux полностью, 🍎 macOS — базовые метрики (documented fallback)
  • shellcheck + bats в CI на Ubuntu и macOS

Установка

git clone https://github.com/suggydev/sysdash && cd sysdash
./install.sh            # → /usr/local/bin/sysdash (PREFIX=… для своего пути)

Или без установки: bash sysdash.

Использование

sysdash           # дашборд с обновлением 1s
sysdash -r 0.5    # интервал 0.5s
sysdash -p 10     # топ-10 процессов
q                 # выход

Дизайн кода

Все парсеры — чистые функции (cpu_pct, mem_usage, net_delta, bar, human_kib), покрытые bats-тестами на фикстурах. Guard [[ "${BASH_SOURCE[0]}" == "${0}" ]] позволяет source'ить файл в тестах без запуска TUI.

bats tests/        # 17 unit-тестов
shellcheck sysdash # чисто

License

MIT — see LICENSE.

About

Live system dashboard in pure bash - zero dependencies, /proc parsers, bats-tested

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages