json 객체를 삭제해야하는 json 파일이 있습니다. sed 명령으로 만 삭제할 수있는 방법이 있습니다. 샘플 파일은 아래에 있습니다.Json 파일에서 Json 객체를 삭제하는 방법 BASH에서 sed 명령으로
{
"name": "ABC",
"description": "XYZ",
"versions": {
},
"json_class": "Chef::Environment",
"chef_type": "environment",
"default_attributes": {
},
"override_attributes": {
"company": {
"xyz": {
"mailer":{
"smtp_host": "Some IP",
"imap_host": "Some Host",
"imap_user": "Some UserId",
"reply_to": "Some User Id",
"outbound_user": "",
"imap_mail_domain": "compute.oraclecloud.com",
"imap_password": ""},
"logicaldomainname": ""
}
}
}
}
이 파일에서 sed 명령으로 파일에서 메일러 개체를 삭제하려고합니다. sed 명령으로 가능한지 알려주세요.
이 삭제의 주된 동기는이 개체를 새로운 메일러 개체로 바꾸는 것입니다. 그래서 다른 메일러 객체가 게시 될 다음 번에 xyz json 객체에 추가 할 것입니다.
예상 출력 :
{
"name": "ABC",
"description": "",
"version": {
},
"json_class": "Chef::Environment",
"chef_type": "environment",
"default_attributes": {
},
"override_attributes": {
"Company": {
"XYZ": {
"logicaldomainname": ""
}
}
}
}
실제로 우리 기계에서 일부 라이센스 규정으로 인해 사용할 수 없습니다. 하지만 우리는 awk를 사용할 수 있습니다. –
'sed'는 확실히 적합하지 않습니다. 'jq'가 옵션이 아니라면 Perl이나 Python을 사용하는 것을 고려해야합니다. 훌륭한 json 라이브러리가 있습니다. –
에 예상 출력이 추가되었습니다. –