ecalper

1.0.0 • Public • Published

ecalper

img-license img-github img-npm

ecalper is a command line utility for performing search-and-replace on files. It's similar to sed but there are a few differences:

Install

With node.js and npm:

npm i -g ecalper

You can now use ecalper and search from the command line.

Examples

Replace all occurrences of "foo" with "bar" in files in the current directory:

ecalper 'foo' 'bar' *

Replace in all files in a recursive search of the current directory:

ecalper 'foo' 'bar' . -r

Replace only in test/file1.js and test/file2.js:

ecalper 'foo' 'bar' test/file1.js test/file2.js

Replace all word pairs with "_" in middle with a "-":

ecalper '(\w+)_(\w+)' '$1-$2' *

Replace only in files with names matching *.js:

ecalper 'foo' 'bar' . -r --include="*.js"

Don't replace in files with names matching .min.js and.py:

ecalper 'foo' 'bar' . -r --exclude="*.min.js,*.py"

Preview the replacements without modifying any files:

ecalper 'foo' 'bar' . -r --preview

Replace using stdin:

echo "asd" | replace "asd" "dsa" -z

See all the options:

ecalper -h

Search

There's also a search command. It's like grep, but with replace's syntax.

search "setTimeout" . -r

Programmatic Usage

You can use replace from your JS program:

import ecalper from 'ecalper'

ecalper({
  regex: "foo",
  replacement: "bar",
  paths: ['./Test/'],
  recursive: false,
  silent: false,
})

More Details

Excludes

By default, ecalper and search will exclude files (binaries, images, etc) that match patterns in the "defaultignore" located in this directory.

On huge directories

If ecalper is taking too long on a large directory, try turning on the quiet flag with -q, only including the necessary file types with --include or limiting the lines shown in a preview with -n.


Dependencies (3)

Dev Dependencies (17)

Package Sidebar

Install

npm i ecalper

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

26.5 kB

Total Files

33

Last publish

Collaborators

  • ivangabriele