我想删除一个包含"electron-inspector": "0.1.4",.package.json 的行
以下不起作用.
sed -i '' -e 'electron-inspector' ./package.json
我需要改变什么?
你可以做到这一点,但sed不是一个JSON解析器! 
sed -i '' -e '/electron-inspector/d' file
Run Code Online (Sandbox Code Playgroud)
(-i ''是macOS的sed所必需的)
想象一下像这样的简单(内联)案例:
{"foo": 123, "electron-inspector": "0.1.4", "bar": 42 }
Run Code Online (Sandbox Code Playgroud)
BOOOM! 所以:
jq -r 'del(.["electron-inspector"])' file.json > _.json && mv _.json file.json
Run Code Online (Sandbox Code Playgroud)
如果你有一个简单的案例,命令将是:
jq 'del(.electroninspector)' file.json
Run Code Online (Sandbox Code Playgroud)
检查JQ
cat file.json
{"foo": 123, "electron-inspector": "0.1.4", "bar": 42 }
Run Code Online (Sandbox Code Playgroud)
$ node<<EOF > _.json && mv _.json file.json
var o = $(< file.json);
delete o["electron-inspector"];
console.log(JSON.stringify(o, null, 4));
EOF
Run Code Online (Sandbox Code Playgroud)
{
"foo": 123,
"bar": 42
}
Run Code Online (Sandbox Code Playgroud)
sponge以下方法正确编辑文件:而不是:> x.json && mv x.json file.json,我们可以做:
command ...... file.json | sponge file.json
Run Code Online (Sandbox Code Playgroud)
您需要安装moreutils.
| 归档时间: |
|
| 查看次数: |
520 次 |
| 最近记录: |