.github/ISSUE_TEMPLATE | ||
assets | ||
build | ||
ci | ||
cmd/gotop | ||
colorschemes | ||
layout | ||
layouts | ||
logging | ||
scripts | ||
snap | ||
termui | ||
utils | ||
widgets | ||
.gitignore | ||
.travis.yml | ||
CHANGELOG.md | ||
config.go | ||
go.mod | ||
go.sum | ||
LICENSE | ||
Makefile | ||
README.md |
![](/LK/xmtop/media/commit/f0abd73a002f87b8db91ffb9409da17b43b361e4/assets/logo/logo.png)
Another terminal based graphical activity monitor, inspired by gtop and vtop, this time written in Go!
![](/LK/xmtop/media/commit/f0abd73a002f87b8db91ffb9409da17b43b361e4/assets/demos/demo.gif)
![](/LK/xmtop/media/commit/f0abd73a002f87b8db91ffb9409da17b43b361e4/assets/screenshots/minimal.png)
Installation
Working and tested on Linux, FreeBSD and macOS. Windows support is planned. OpenBSD works with some caveats.
Source
go get github.com/cjbassi/gotop
Prebuilt binaries
Note: Doesn't require Go.
Clone the repo and then run scripts/download.sh to download the correct binary for your system from the releases tab:
git clone --depth 1 https://github.com/cjbassi/gotop /tmp/gotop
/tmp/gotop/scripts/download.sh
Then move gotop
into your $PATH
somewhere.
Arch Linux
Install gotop
, gotop-bin
, or gotop-git
from the AUR.
FreeBSD
pkg install gotop
Homebrew
brew tap cjbassi/gotop
brew install gotop
Snap
snap install gotop-cjbassi
Note: You may need to enable certain permissions for all of the widgets to work:
snap connect gotop-cjbassi:hardware-observe
snap connect gotop-cjbassi:mount-observe
snap connect gotop-cjbassi:system-observe
Usage
Keybinds
- Quit:
q
or<C-c>
- Process navigation
k
and<Up>
: upj
and<Down
: down<C-u>
: half page up<C-d>
: half page down<C-b>
: full page up<C-f>
: full page downgg
and<Home>
: jump to topG
and<End>
: jump to bottom
- Process actions:
<Tab>
: toggle process groupingdd
: kill selected process or group of processes
- Process sorting
c
: CPUm
: Memp
: PID
- CPU and Mem graph scaling:
h
: scale inl
: scale out
?
: toggles keybind help menu
Mouse
- click to select process
- mouse wheel to scroll through processes
Colorschemes
gotop ships with a few colorschemes which can be set with the -c
flag followed by the name of one. You can find all the colorschemes in the colorschemes folder.
To make a custom colorscheme, check out the template for instructions and then use default.json as a starter. Then put the file at ~/.config/gotop/<name>.json
and load it with gotop -c <name>
. Colorschemes PR's are welcome!
CLI Options
-c
, --color=NAME
Set a colorscheme.
-m
, --minimal
Only show CPU, Mem and Process widgets.
-r
, --rate=RATE
Number of times per second to update CPU and Mem widgets [default: 1].
-V
, --version
Print version and exit.
-p
, --percpu
Show each CPU in the CPU widget.
-a
, --averagecpu
Show average CPU in the CPU widget.
-s
, --statusbar
Show a statusbar with the time.
-b
, --battery
Show battery level widget (minimal
turns off). preview
-i
, --interface=NAME
Select network interface [default: all].
-l
, --layout=NAME
Choose a layout from definitions in the $XDG_CONFIG_HOME/gotop directory
--layout-file=NAME
Provide a path to a layout file to use (useful for mucking about with layouts)