replace-json-property
replace-json-property copied to clipboard
CLI tool to replace a specific properties value with a new value in a JSON file.

This module allows you to replace a specific property in a JSON.
Table of Contents generated with DocToc
- Comand line usage
- Short form
- Usage from code
- Options
- Help command
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.
-
Using module imports
import {replace} from 'replace-json-property'; replace('./environment/test.json', 'foo', 'new value'); -
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.