Создание JSON лучше всего работает с выделенным инструментом JSON, который также может иметь смысл необработанного текста.
xidel
- такой инструмент.
XPath:
xidel -s input.txt -e '{"array":x:lines($raw) ! {substring-before(.,":"):substring-after(.,":")}}'
(x:lines($raw)
- сокращение для tokenize($raw,'\r\n?|\n')
, которое создает последовательность всех строк.)
XQuery:
xidel -s input.txt --xquery '{"array":for $x in x:lines($raw) let $a:=tokenize($x,":") return {$a[1]:$a[2]}}'
См. Также this Онлайн-тестер Xidel.