Skip to content

CLI tool to replace a specific properties value with a new value in a JSON file.

License

Notifications You must be signed in to change notification settings

nivekcode/replace-json-property

Repository files navigation

code style: prettier codecov semantic-release

Logo

This module allows you to replace a specific property in a JSON.

Table of Contents generated with DocToc

Comand line usage

You can use this via the following command:

replace-json-property pathToFile property value

This command replaces all occurences of the matching property. It also replaces occurences in nested objects or objects in arrays.

The following command would replace all values of the foo property with 'test' inside the test.json.

replace-json-property ./test.json foo test,

Executing the command above on the given JSON

{
    "foo": "bar",
    "a": {
        "b": 1,
        "foo": "bar",
        "c": [
            {"d": 1, "foo": "bar"},
            {"d": 2, "foo": "bar"},
            {"d": 3, "foo": "bar"},
        ]
    }
}

results in:

{
    "foo": "test",
   	"a": {
        "b": 1,
        "foo": "test",
        "c": [
            {"d": 1, "foo": "test"},
            {"d": 2, "foo": "test"},
            {"d": 3, "foo": "test"},
        ]
    }
}

Short form

All commands explained above can also be run with the shortcut version rjp.

rjp ./test.json foo test,

Usage from code

You can also use the replace function in your JavaScript code.

  1. Using module imports

    import {replace} from 'replace-json-property';
    
    replace('./environment/test.json', 'foo', 'new value');
  2. Using commonjs

    const replaceJSONProperty = require('replace-json-property');
    
    replaceJSONProperty.replace('./environment/test.json', 'foo', 'new value');

Options

The following flags allow you to configure how the resulting file is written.

Option Description Default
-s or --spaces Add the spaces the file should be written with, for example (2, 4) 2
-e or --eol Add the line ending the file should be written with, for example "\r\n" "\n"
--silent Silent mode. Executes without log messages False
--limit Limit the number of replacements 0 (unlimited)
--add When set to true propertys that do not exist will be added false

Help command

You can always run the help command to see how the signature looks

replace-json-property -h

or

replace-json-property --help

To get the current version use the --version or -v command.

About

CLI tool to replace a specific properties value with a new value in a JSON file.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •