How to Install and Use Viddy in Linux for Modern Command Watching with Time Machine History

The standard Linux watch utility has been a cornerstone of terminal monitoring for decades, executing commands repeatedly at fixed intervals. However, standard watch lacks the ability to scroll backwards through past command outputs, inspect historical fluctuations, or export diff sequences. The viddy utility modernises repetitive command execution by incorporating a built-in time-machine pager, granular text diffing, and keyboard-driven history navigation.

What Is Viddy and Why Replace Traditional watch?

Written in Go, viddy addresses the core limitations of traditional command-loop utilities:

  • Time Machine History: Pauses live updates and lets you scrub backwards frame-by-frame through previous command executions to identify exactly when a metric spiked or dropped.
  • Precise Diff Highlighting: Visualises changes between successive executions using colour-coded additions and removals.
  • Precise Timing: Supports sub-second intervals and drift-corrected timers to maintain exact intervals.
  • Vim-Style Keybindings: Search output using /, navigate history using h and l, and toggle full-screen diffs effortlessly.

Installing Viddy on Linux

You can install viddy via native distribution packages, Homebrew on Linux, or pre-compiled binaries.

Installing on Arch Linux

Arch Linux users can install viddy directly from the official repositories:

sudo pacman -S viddy

Installing on Ubuntu and Debian

On Debian, Ubuntu, and Linux Mint, download and install the official Debian package from GitHub releases:

VIDDY_VERSION=$(curl -s https://api.github.com/repos/sachaos/viddy/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/')
curl -LO "https://github.com/sachaos/viddy/releases/download/v${VIDDY_VERSION}/viddy_${VIDDY_VERSION}_linux_x86_64.tar.gz"
tar -xzf "viddy_${VIDDY_VERSION}_linux_x86_64.tar.gz"
sudo install -m 755 viddy /usr/local/bin/
rm -f "viddy_${VIDDY_VERSION}_linux_x86_64.tar.gz" viddy

Installing via Go

If you have Go installed on your workstation, install the latest release directly:

go install github.com/sachaos/viddy@latest

Running Commands and Monitoring Output

To run a command with viddy, supply the target binary and arguments just as you would with standard watch:

viddy -n 2 ls -l /var/log

This command runs ls -l /var/log every 2 seconds, displaying the execution interval and elapsed execution duration in the top status bar.

Using the Time-Machine Feature to Inspect Historical Output

When an error occurs or a process disappears from view, you can immediately halt live execution and scrub backward in time:

  1. Press Space while viddy is running. Live polling pauses immediately, entering Time Machine mode.
  2. Press the Left Arrow (or h) to step backwards through past execution snapshots.
  3. Press the Right Arrow (or l) to step forward toward the most recent snapshot.
  4. Use Shift + Left Arrow to skip backward 10 snapshots at once.
  5. Press Space again to unpause and resume live command polling.

Enabling Diff Mode and Searching Text

To highlight character-level changes across successive iterations, press d while viddy is running, or launch with the -d flag:

viddy -d -n 1 netstat -tuln

Changed network ports or socket connections will flash in highlighted green and red ANSI colours. To search for specific IP addresses or service names within the buffer, press /, enter your query, and press Enter to jump between occurrences.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.