У меня есть файл JSON, который содержит массив объектов.Мне нужно извлечь их в файл через запятую.Однако есть одно из значений (шифр), которое имеет несколько значений, разделенных пробелами.Мне нужно извлечь (разобрать) их в два формата: 1) Каждое значение, разделенное запятой.
2) Только первое значение перед первым пробелом.
Мой файл json содержит:
[{ "host": "xys.com", "ip": "0.20.0.4", "port": 222, "cipher": "ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(128) Mac=AEAD"}]
Я использую эту команду jq:
cat test.json | jq -r '.[] | "\(.host),\(.ip),\(.cipher)"' > test_parsing.txt
, которая дает мне:
xys.com,0.20.0.4,TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(128) Mac=AEAD
Что яwant - это две формы:
1) Разделяйте значения шифра запятыми и, если есть знак =
, возьмите то, что следует после него:
xys.com,0.20.0.4,TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256,TLSv1.2,ECDH,RSA,AESGCM(128),AEAD
2) Извлеките только первоечасть значения cipher
:
xys.com,0.20.0.4,TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256
Как извлечь два формата из файла mu json
?