У меня была куча файлов .json с той же проблемой.Мое решение состояло в том, чтобы использовать bash-скрипт для зацикливания всех файлов и использовать jq
для каждого из них, чтобы конвертировать в отдельные csv-файлы.Что-то вроде
i=1
for eachFile in /path/to/json/*.json; do
cat json-$i.json | jq -r '.[] | {column1: .path.to.data, column2: .path.to.data} | [.[] | tostring] | @csv' > extract-$i.csv
echo "converted $i of many json files..."
((i=i+1))
done
Тогда вы можете cat
и >>
всех из них в аналогичном цикле в один файл .csv.Что-то вроде
i=1
for eachFile in /path/to/csv/*.csv; do
cat extract-$i.csv >> concatenate.csv
((i=i+1))
done
Если вы достаточно хитры, вы можете объединить их в один скрипт ... edit: на самом деле, это просто вопрос добавления >
в первый скрипт и использованияодно имя файла, поэтому cat json-$i.json | jq -r '.[] | {column1: .path.to.data, column2: .path.to.data} | [.[] | tostring] | @csv' >> output.csv