sad
A command-line batch search and replace tool that shows a diff before changes are applied.
These buttons open the developer's own site, repository or store listing in a new tab. wares.gg does not host downloads.
1 more ways to get sad
Package managers
- Homebrew
brew install sad
About sad
sad (Space Age seD) is a batch file editing tool. Unlike sed, it shows a diff of the proposed replacements before anything is written, so you can check an edit before committing it.
When fzf is installed, sad uses it to let you pick which individual changes to apply. Without fzf, you review the diff and apply everything with --commit. It also works with git-compatible diff colourizers such as delta and diff-so-fancy, and it takes its file list from tools like fd.
Strengths
- Diff preview before any file is changed
- Selective replacement through fzf
- Works with delta and diff-so-fancy for colored diffs
Limitations
- Interactive selection needs fzf installed separately
- No built-in UI of its own
Details
- Pricing
- FreeFree and open source under the MIT licence.
- License
- MIT
- Developer
- ms-jpq
- Platforms
- macOS, Linux, Command line
- How it runs
- Downloadable app
- Account
- Not required
- Works offline
- Yes
- Best suited for
- Developers doing search and replace across many files who want to review changes first
- Categories
- CLI tools, Developer tools
- Last verified
- Added
- Provenance
- Facts checked against the developer's own pages and store listings, 2 sources on file.
Alternatives to sad
Compare allSoftware that can replace sad for an important use case, and what changes if you switch.
Serpl
A terminal interface for searching and replacing text across a whole project folder.
Serpl offers a full terminal interface with preview, case-preserving replacement and optional ast-grep search, but requires ripgrep and is seeking new maintainers.
fastmod
A fast command-line tool for interactive regex search and replace across a large codebase.
fastmod reviews each replacement interactively across large codebases without needing fzf, though it is a small project with occasional updates.
sd
Replace text with a focused command-line tool.
sd performs literal or regex replacement in files without a diff preview or interactive selection, and it also runs on Windows.
sad as an alternative
Listings that name sad as an alternative.
ast-grep
Search and rewrite source code using its structure instead of text alone.
sad performs batch search and replace with a diff preview before any file changes, but it works on text patterns rather than syntax trees and needs fzf for selection.
scooter
Review and apply text replacements through a terminal interface.
sad shows a diff preview before applying batch replacements and uses fzf for selective replacement, which must be installed separately, and runs on macOS and Linux only.
Similar software
Related functionality, not necessarily a direct replacement.
delta
A pager that makes git diffs readable: syntax highlighting, word-level changes, side-by-side view and line numbers.
fzf
A fuzzy filter for any list: files, command history, processes, branches, anything you can pipe into it.
ripgrep
Searches a whole directory tree for a pattern in a fraction of the time grep takes, and skips what gitignore says to skip.
GNU sed
The GNU stream editor for filtering and transforming text from files or pipelines.
RnR
A command-line tool that batch renames files and directories using regular expressions.