0
Я пытаюсь вырезать определенную строку из нескольких файлов. У меня около 300 файлов json.Команда Grep и cut в терминале шпатлевки
file structure:
{
"FieldName1": "XXXX",
"FieldName2": "1",
"FieldName3": "XXX",
"FieldName4": "XXX",
"FieldName5": "1",
.
.
.
}
,
{
"FieldName1": "XXXX",
"FieldName2": "2",
"FieldName3": "XXX",
"FieldName4": "XXX",
"FieldName5": "2",
.
.
.
}
некоторые файлы записываются в одну строку:
{"FieldName1": "XXXX", "FieldName2": "3", "FieldName3": "XXX", "FieldName4": "XXX", "FieldName5": "3"}, {"FieldName1": "XXXX", "FieldName2": "4", "FieldName3": "XXX", "FieldName4": "XXX", "FieldName5": "4"}, ...
}
Что мне нужно, чтобы получить в моем выходной файл представляет собой список из 2-х полей из файлов:
"FieldName1": "1",
"FieldName2": "1",
"FieldName1": "2",
"FieldName2": "2",
"FieldName1": "3",
"FieldName2": "3",
"FieldName1": "4",
"FieldName2": "4",
.
.
.
Есть ли простой способ сделать это?
Спасибо!
Если у вас есть GNU 'grep', опция' -o' - это то, что вы хотите. 'grep -o '" FieldName [12] ":" [^ "] *"' 'может быть тем, что вам нужно. –
Можете ли вы предоставить конкретный образец ввода с точным желаемым результатом? Просто чтобы понять, что именно вы хотите. Также подумайте о том, чтобы добавить некоторые из ваших попыток. Наконец: вы проверили команду 'jq'? – fedorqui