6.1 KiB
bottom
A graphical top clone, written in Rust. Inspired by both gtop and gotop
Installation
Linux
You can install the in-development version by cloning and using cargo build --release
. You can get release versions using cargo install bottom
, or manually building from the Releases page. Other installation methods based on distros are as follows:
Arch Linux
You can get the release versions from the AUR by installing bottom
.
Windows
You can install the in-development version by cloning and using cargo build --release
. You can get release versions using cargo install bottom
, or manually building from the Releases page. You may need to install a font like FreeMono and use a terminal like cmder for font support to work properly, unfortunately.
macOS
macOS support will hopefully come soonTM.
Support
The compatibility of each widget and operating systems are, as of version 0.1.0, as follows:
OS/Widget | CPU | Memory | Disks | Temperature | Processes | Networks |
---|---|---|---|---|---|---|
Linux | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Windows | ✓ | ✓ | ✓ | Currently not working | ✓ | Partially supported (total RX/TX unavailable) |
macOS | Untested | Untested | Untested | Untested | Untested | Untested |
Usage
Run using btm
.
Command line options
-
-h
,--help
shows the help screen and exits. -
-a
,--avgcpu
enables also showing the average CPU usage in addition to per-core CPU usage. -
-m
,--dot-marker
uses a dot marker instead of the default braille marker. -
-c
,--celsius
displays the temperature type in Celsius. This is the default. -
-f
,--fahrenheit
displays the temperature type in Fahrenheit. -
-k
,--kelvin
displays the temperature type in Kelvin. -
-v
,--version
displays the version number and exits. -
-d
,--debug
enables debug logging. -
-r <RATE>
,--rate <RATE>
will set the refresh rate in milliseconds. Lowest it can go is 250ms, the highest it can go is 2128 - 1. Defaults to 1000ms, and lower values may take more resources due to more frequent polling of data, and may be less accurate in some circumstances. -
-l
,--left_legend
will move external table legends to the left side rather than the right side. Right side is default. -
-u
,--current_usage
will make a process' CPU usage be based on the current total CPU usage, rather than assuming 100% CPU usage. Only affects Linux for now. -
g
,--group
will group together processes with the same name by default (equivalent to pressingTab
).
Keybindings
General
-
q
,Ctrl-c
to quit. Note if you are currently in the search widget,q
will not work so you can still type. -
Ctrl-r
to reset the screen and reset all collected data. -
f
to freeze the screen from updating with new data. Pressf
again to unfreeze. Note that monitoring will still continue in the background. -
Ctrl-Up
orCtrl-k
,Ctrl-Down
orCtrl-j
,Ctrl-Left
orCtrl-h
,Ctrl-Right
orCtrl-l
to navigate between widgets. -
Esc
to close a dialog window. -
?
to get a help screen explaining the controls. Note all controls exceptEsc
to close the dialog will be disabled while this is open.
Scrollable Tables
-
Up
ork
andDown
orj
scrolls through the list if the widget is a table (Temperature, Disks, Processes). -
gg
orHome
to jump to the first entry of the current table. -
G
(Shift-g
) orEnd
to jump to the last entry of the current table.
Processes
-
dd
to kill the selected process -
c
to sort by CPU usage. Sorts in descending order by default. Press again to reverse sorting order. -
m
to sort by memory usage. Sorts in descending order by default. Press again to reverse sorting order. -
p
to sort by PID. Sorts in ascending order by default. Press again to reverse sorting order. -
n
to sort by process name. Sorts in ascending order by default. Press again to reverse sorting order. -
Tab
to group together processes with the same name. Disables PID sorting.dd
will now kill all processes covered by that name. -
Ctrl-f
or/
to toggle a search box for finding a process. PressCtrl-p
orCtrl-n
within the search bar widget to switch between searching for PID and name respectively. PressEsc
orCtrl-f
to close it.
Mouse actions
- Scrolling with the mouse will scroll through the currently selected list, similar to using the up/down arrow keys.