Eine JSON-Datei hat eine Zeile im folgenden Format. "solution-id": 1
finden Sie den übereinstimmenden String-Schlüssel und erhöhen Sie ihren Wert in JSON-Datei mit Bash
und diese Zeile 1000 Mal in der Datei wiederholt wird. Jetzt muss ich die Linie so modifizieren, dass Datei wie sieht wie folgt aus
"solution-id": 1
"solution-id": 2
"solution-id": 3
...
....
.....
""solution-id": 1000"
Wie kann ich dies mit bash oder Python erreichen?
Dank @janos.! Funktioniert gut gemäß meiner Anforderung. Aber versucht zu interpretieren, was tatsächlich mit "map (.value)" in dem Befehl passiert. – hruday
@hruday dies ist was "to_entries" tut: es nimmt eine Array-Eingabe und generiert Schlüssel-Wert-Paare, wobei key eine Folge von Zahlen 0, 1, 2, ..., n ist, und Wert ist das ursprüngliche Element in das Array. Die erste Map in der Pipeline besteht darin, den Wert mit der Sequenznummer zu ändern, die zweite Map soll den Wert extrahieren. Um es besser zu verstehen, führen Sie einfach 'jq to_entries 'file.json' aus, die Mappings ergeben mehr Sinn. – janos