This project is no longer maintained. Users are encouraged to switch to Ruplacer, a rewrite in Rust by the same author. It is both faster and more featureful, and I believe you'll like it :)
Replace text in files.
pip as usual.
Or, use the AUR on Arch Linux.
replacer [OPTIONS] PATTERN REPLACEMENT [FILES ...]
Note that internally, we'll call Python with:
re.sub(<PATTERN>, <REPLACEMENT>, line)
for each line of every regular file found in the current working directory.
This means you can use fancy backward references with \1
By default hidden files, and files matching
build-*, .git, .svn, *.py[co], *.[oa] , *.back, *~ , *.so, *.awill be ignored
FILESis given, replacement will be performed on the files given as argument.
You can also specify
--file-filterto specify a pattern to match against the filenames. For instance, to replace in every .c file, use:
replacer spam eggs --file-filter '*.c'
You can create a backup for each modified file by using
for a full list of options
First version was implemented in Bash in ctafconf.
Then it was rewritten in Python in this commit.