macOS
brew install edlocal Homebrew formula metadata
sudo port install edMacPorts ports tree · editors/ed/Portfile · source: api.github.com
brew
Classic UNIX line editor. Version 1.22.5 via Homebrew; verified from local package data.
install
brew install edlocal Homebrew formula metadata
sudo port install edMacPorts ports tree · editors/ed/Portfile · source: api.github.com
sudo apk add edAlpine Linux edge package indexes · ed · source: dl-cdn.alpinelinux.org
sudo apt install edDebian stable package indexes · ed · source: deb.debian.org
sudo dnf install edFedora Rawhide package metadata · ed · source: dl.fedoraproject.org
nix profile install nixpkgs#ednixpkgs package indexes · pkgs/by-name/ed/ed/package.nix · source: api.github.com
sudo pacman -S edArch Linux sync databases · ed · source: geo.mirror.pkgbuild.com
sudo zypper install edopenSUSE Tumbleweed package metadata · ed · source: download.opensuse.org
scoop install main/redScoop official bucket manifest trees · bucket/red.json · source: api.github.com
overview
Classic UNIX line editor
history
GNU ed is the GNU implementation of the classic Unix line editor. In package-manager terms it is tiny, old-fashioned, standardized, scriptable, and still worth shipping because the `ed` utility is part of the Unix/POSIX tool vocabulary.
The POSIX specification defines `ed` as a line-oriented text editor with command and input modes. That standardized interface is the historically important part of the package: `ed` is a small command language for editing text through standard input, not a screen editor.
The GNU package supplies the Free Software Foundation's maintained implementation, including both `ed` and the restricted variant `red`. GNU FTP release archives show the modern GNU release stream at least from ed 1.0 in August 2008 through ed 1.22.5 in February 2026.
ed persists because it is standardized, scriptable, and expected on Unix-like systems even though most interactive editing moved to screen editors long ago. Its Homebrew, Debian, Ubuntu, Alpine, Arch, Nix, MacPorts, Scoop, and openSUSE packaging in the batch input reflects that baseline utility role.
GNU ed's adoption is therefore less about visible user enthusiasm and more about compatibility: scripts, recovery procedures, minimal systems, teaching material, and standards conformance still need a line editor named `ed`.
POSIX documents `ed [ -p string ] [ -s ] [ file ]`, with commands read from standard input. In command mode, input is interpreted as editing commands; in input mode, input is inserted as text.
GNU ed also ships `red`, a restricted form useful in constrained editing contexts. The utility is commonly used non-interactively in scripts or as a lowest-common-denominator editor on small systems.
ed is package-manager bedrock: a tiny utility that looks obsolete until a bootstrap environment, recovery shell, POSIX test, or ancient script expects it. Shipping it is a compatibility decision as much as a feature decision.
For people who care about Unix history, `ed` is also a living fossil in the best sense: the interface in modern packages is still recognizably the line-editor model described by POSIX.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
ed | cli | global executable | |
red | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://www.gnu.org/software/ed/ed.html
install metadata
| Package key | brew:ed |
|---|---|
| Version | 1.22.5 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/ed |
| Homepage | https://www.gnu.org/software/ed/ed.html |
| Repository | https://git.savannah.gnu.org/cgit/ed.git |
| Upstream docs | https://www.gnu.org/software/ed/manual/ed_manual.html |
| License | GPL-3.0-or-later |
| Source archive | https://ftpmirror.gnu.org/gnu/ed/ed-1.22.5.tar.lz |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
| Caveats | All commands have been installed with the prefix "g". If you need to use these commands with their normal names, you can add a "gnubin" directory to your PATH from your bashrc like: PATH="$HOMEBREW_PREFIX/opt/ed/libexec/gnubin:$PATH" |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | ed |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | yes |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
ed 1.21.1-1
classic UNIX line editor
https://www.gnu.org/software/ed/
sudo apt install eded
nix profile install nixpkgs#eded 1.20.1-1
classic UNIX line editor
https://www.gnu.org/software/ed/
sudo apt install eded 1.22.5-r0
Line-oriented text editor used to create, display, modify and otherwise manipulate text files
https://www.gnu.org/software/ed/
sudo apk add eded-doc 1.22.5-r0
Line-oriented text editor used to create, display, modify and otherwise manipulate text files (documentation)
https://www.gnu.org/software/ed/
sudo apk add ed-doced 1.22.5-2.fc45
The GNU line editor
https://www.gnu.org/software/ed/
sudo dnf install eded 1.22.5-1
A POSIX-compliant line-oriented text editor
https://www.gnu.org/software/ed/ed.html
sudo pacman -S eded 1.22.5-1.1
A line-oriented text editor
https://www.gnu.org/software/ed/
sudo zypper install eded
sudo port install edred
nix profile install nixpkgs#redmain/red
scoop install main/redsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.