Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/orf/gping
Ping, but with a graph
https://github.com/orf/gping
cli command-line graph linux network-monitoring ping rust shell
Last synced: 6 days ago
JSON representation
Ping, but with a graph
- Host: GitHub
- URL: https://github.com/orf/gping
- Owner: orf
- License: mit
- Created: 2015-10-17T14:34:25.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2025-01-01T10:07:52.000Z (12 days ago)
- Last Synced: 2025-01-03T01:57:30.122Z (10 days ago)
- Topics: cli, command-line, graph, linux, network-monitoring, ping, rust, shell
- Language: Rust
- Homepage:
- Size: 5.29 MB
- Stars: 11,062
- Watchers: 77
- Forks: 318
- Open Issues: 31
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome - orf/gping - Ping, but with a graph (Rust)
- awesome-tuis - gping
- awesome-tools - gping - 可视化的 ping。 (Command Line / Dependency Management)
- fucking-Awesome-Linux-Software - ![Open-Source Software - ping but with graph, cross platform. (Command Line Utilities / Tools)
- awesome-repositories - orf/gping - Ping, but with a graph (Rust)
- awesome-fancy-toolkit - 带图形显示的ping, gping
- awesome-starts - orf/gping - Ping, but with a graph (Rust)
- awesome-cli-tui-software - orf/gping - Ping, but with a graph (<a name="infra"></a>infra)
- awesome-devtools - Gping - Ping with a graph. Exponentially better than regular ping in many cases. ![ossoft][oss] (Command line - Linux / Learning resources)
- awesome-list - gping
- Awesome-Linux-Software - ![Open-Source Software - ping but with graph, cross platform. (Command Line Utilities / Tools)
- awesomeness - gping - Ping, but with a graph. (Networking / Kubernetes)
- awesome-coding - goping: 网络ping命令
- awesome-list - orf/gping - Ping, but with a graph (Rust)
- my-awesome - orf/gping - line,graph,linux,network-monitoring,ping,rust,shell pushed_at:2025-01 star:11.1k fork:0.3k Ping, but with a graph (Rust)
- awesome-ops - orf/gping - 10-17|2024-10-02 | 以图形化方式展示 ping 的延迟状态的命令行工具 | (终端命令行工具)
README
# gping 🚀
[![Crates.io](https://img.shields.io/crates/v/gping.svg)](https://crates.io/crates/gping)
[![Actions Status](https://github.com/orf/gping/workflows/CI/badge.svg)](https://github.com/orf/gping/actions)Ping, but with a graph.
![](./images/readme-example.gif)
Comes with the following super-powers:
* Graph the ping time for multiple hosts
* Graph the _execution time_ for commands via the `--cmd` flag
* Custom colours
* Windows, Mac and Linux supportTable of Contents
=================* [Install :cd:](#install-cd)
* [Usage :saxophone:](#usage-saxophone)# Install :cd:
* macOS
* [Homebrew](https://formulae.brew.sh/formula/gping#default): `brew install gping`
* [MacPorts](https://ports.macports.org/port/gping/): `sudo port install gping`
* Linux (Homebrew): `brew install gping`
* CentOS (and other distributions with an old glibc): Download the MUSL build from the latest release
* Windows/ARM:
* Scoop: `scoop install gping`
* Chocolatey: `choco install gping`
* Download the latest release from [the github releases page](https://github.com/orf/gping/releases)
* Fedora ([COPR](https://copr.fedorainfracloud.org/coprs/atim/gping/)): `sudo dnf copr enable atim/gping -y && sudo dnf install gping`
* Cargo (**This requires `rustc` version 1.67.0 or greater**): `cargo install gping`
* Arch Linux: `pacman -S gping`
* Alpine linux: `apk add gping`
* Ubuntu >23.10/Debian >13: `apt install gping`
* Ubuntu/Debian ([Azlux's repo](https://packages.azlux.fr/)):
```bash
echo 'deb [signed-by=/usr/share/keyrings/azlux.gpg] https://packages.azlux.fr/debian/ bookworm main' | sudo tee /etc/apt/sources.list.d/azlux.list
sudo apt install gpg
curl -s https://azlux.fr/repo.gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/azlux.gpg > /dev/null
sudo apt update
sudo apt install gping
```
* Gentoo ([dm9pZCAq overlay](https://github.com/gentoo-mirror/dm9pZCAq)):
```sh
sudo eselect repository enable dm9pZCAq
sudo emerge --sync dm9pZCAq
sudo emerge net-misc/gping::dm9pZCAq
```
* FreeBSD:
* [pkg](https://www.freshports.org/net-mgmt/gping/): `pkg install gping`
* [ports](https://cgit.freebsd.org/ports/tree/net-mgmt/gping) `cd /usr/ports/net-mgmt/gping; make install clean`
* Docker:
```sh
# Check all options
docker run --rm -ti --network host ghcr.io/orf/gping:gping-v1.15.1 --help
# Ping google.com
docker run --rm -ti --network host ghcr.io/orf/gping:gping-v1.15.1 google.com
```
* Flox:
```sh
# Inside of a Flox environment
flox install gping
```# Usage :saxophone:
Just run `gping [host]`. `host` can be a command like `curl google.com` if the `--cmd` flag is used. You can also use
shorthands like `aws:eu-west-1` or `aws:ca-central-1` to ping specific cloud regions. Only `aws` is currently supported.```bash
$ gping --help
Ping, but with a graph.Usage: gping [OPTIONS] [HOSTS_OR_COMMANDS]...
Arguments:
[HOSTS_OR_COMMANDS]... Hosts or IPs to ping, or commands to run if --cmd is provided. Can use cloud shorthands like aws:eu-west-1.Options:
--cmd
Graph the execution time for a list of commands rather than pinging hosts
-n, --watch-interval
Watch interval seconds (provide partial seconds like '0.5'). Default for ping is 0.2, default for cmd is 0.5.
-b, --buffer
Determines the number of seconds to display in the graph. [default: 30]
-4
Resolve ping targets to IPv4 address
-6
Resolve ping targets to IPv6 address
-i, --interface
Interface to use when pinging
-s, --simple-graphics
Uses dot characters instead of braille
--vertical-margin
Vertical margin around the graph (top and bottom) [default: 1]
--horizontal-margin
Horizontal margin around the graph (left and right) [default: 0]
-c, --color
Assign color to a graph entry. This option can be defined more than once as a comma separated string, and the order which the colors are provided will be matched against the hosts or commands passed to gping. Hexadecimal RGB color codes are accepted in the form of '#RRGGBB' or the following color names: 'black', 'red', 'green', 'yellow', 'blue', 'magenta','cyan', 'gray', 'dark-gray', 'light-red', 'light-green', 'light-yellow', 'light-blue', 'light-magenta', 'light-cyan', and 'white'
-h, --help
Print help information
-V, --version
Print version information
--clear
Clear the graph from the terminal after closing the program
```