find data/ -name '*.json' -exec cat {} \; > uber.json
eine kurze Erklärung:
find <where> \
-name <file_name_pattern> \
-exec <run_cmd_on_every_hit> {} \; \
> <where_to_store>
Verwenden Sie find
um alle JSON-Dateien zu erhalten und zu verketten.
find data -name '*.json' -exec cat {} + > all.json
Beachten Sie, dass dies kein gültiges JSON ist. Wenn Sie möchten, dass eine JSON-Datei mehrere Objekte enthält, müssen sie sich in einem enthaltenden Array oder Objekt befinden, also müssen Sie [ ]
hinzufügen um sie herum und setzen Sie ,
zwischen jedem.
Alternativ – wenn Sie eine Liste Ihrer Dateien haben – können Sie diese an xargs
weiterleiten
<path to your files> | xargs cat > all.json