Как анализировать данные json с помощью jq?

Используйте 7z rn, чтобы переименовать файлы в архиве так, чтобы они имели косую черту. Затем, когда вы распаковываете архив, будут созданы каталоги.

Чтобы переименовать файлы, перечислите пути к файлам в архиве, содержащие косые черты, и создайте список строк замены, которые заменяют обратную косую черту на косую черту, используя, например, awk.

7z rn windows.zip $(7z l windows.zip | grep '\\' | awk '{ print $6, gensub(/\\/, "/", "g", $6); }' | paste -s)
0
13.10.2018, 17:11
2 ответа

Следующий вывод выводит 2 строки со строковым форматом, показанным в последней строке, который вы можете легко изменить:

jq -M -r '.[] | keys[] as $var |
 [.[$var].free[0],.[$var].total_size[0]] as [$f,$t] |
 "device_name \($var) free \($f) total_size \($t)" '

выход:

device_name C:| free 18707755008 total_size 55832473600
device_name D:| free 10178084864 total_size 21471686656
2
28.01.2020, 02:31

Используйте это:

jq '.logical["D:|"].free[0],.logical["D:|"].total_size[0]' file.json

Выход:

10178084864
21471686656
0
28.01.2020, 02:31

Теги

Похожие вопросы