JSON_XS(1)

🌸 json_xs β€” JSON::XS commandline utility 🌸

(JSON_XS(1), from the User Contributed Perl Documentation) β€” okay so bestie, welcome to the manual page that’s all about converting formats and being lowkey iconic ✨

✨ NAME ✨

json_xs β€” the JSON::XS commandline utility. short, sweet, slay πŸ’…

🌈 SYNOPSIS 🌈

json_xs [-v] [-f inputformat] [-t outputformat]

πŸ¦‹ DESCRIPTION πŸ¦‹

json_xs converts between some input and output formats (one of them is JSON). lowkey magic, highkey useful 🫢

The default input format is json and the default output format is json-pretty. so if you just pipe stuff in, it’ll pretty-print JSON back at you, no cap ✨

πŸ’– OPTIONS πŸ’–

  • -v β€” Be slightly more verbose. just a lil extra chat, you know? πŸ‘€
  • -f fromformat β€” Read a file in the given format from STDIN.

fromformat can be one of:

  • json β€” a json text encoded, either utf-8, utf16-be/le, utf32-be/le
  • cbor β€” CBOR (RFC 7049, CBOR::XS), a kind of binary JSON
  • storable β€” a Storable frozen value
  • storable-file β€” a Storable file (Storable has two incompatible formats)
  • bencode β€” use Convert::Bencode, if available (used by torrent files, among others)
  • clzf β€” Compress::LZF format (requires that module to be installed)
  • eval β€” evaluate the given code as (non-utf-8) Perl, basically the reverse of -t dump
  • yaml β€” YAML format (requires that module to be installed)
  • string β€” do not attempt to decode the file data
  • none β€” nothing is read, creates an undef scalar - mainly useful with -e
  • -t toformat β€” Write the file in the given format to STDOUT.

toformat can be one of:

  • json β€” json, utf-8 encoded
  • json-utf-8 β€” json, utf-8 encoded
  • json-pretty β€” as above, but pretty-printed
  • json-utf-16le β€” little endian utf-16
  • json-utf-16be β€” big endian utf-16
  • json-utf-32le β€” little endian utf-32
  • json-utf-32be β€” big endian utf-32
  • cbor β€” CBOR (RFC 7049, CBOR::XS), a kind of binary JSON
  • cbor-packed β€” CBOR using extensions to make it smaller
  • storable β€” a Storable frozen value in network format
  • storable-file β€” a Storable file in network format (Storable has two incompatible formats)
  • bencode β€” use Convert::Bencode, if available (used by torrent files, among others)
  • clzf β€” Compress::LZF format
  • yaml β€” YAML::XS format
  • dump β€” Data::Dump
  • dumper β€” Data::Dumper
  • string β€” writes the data out as if it were a string
  • none β€” nothing gets written, mainly useful together with -e
⚠️ Note that Data::Dumper doesn't handle self-referential data structures correctly - use dump instead.
  • -e code β€” Evaluate perl code after reading the data and before writing it out again - can be used to filter, create or extract data. The data that has been written is in $_, and whatever is in there is written out afterwards. literally a whole little Perl hook, bestie 🧚

πŸŽ€ EXAMPLES πŸŽ€

json_xs -t none <isitreally.json

β€œJSON Lint” β€” tries to parse the file isitreally.json as JSON β€” if it is valid JSON, the command outputs nothing, otherwise it will print an error message and exit with non-zero exit status. cute lil validator, iconic πŸ”₯

<src.json json_xs >pretty.json

Prettify the JSON file src.json to dst.json. πŸ’–

json_xs -f storable-file <file

Read the serialised Storable file file and print a human-readable JSON version of it to STDOUT. 🫢

json_xs -f storable-file -t yaml <file

Same as above, but write YAML instead (not using JSON at all :) 🌸

json_xs -f none -e '$_ = [1, 2, 3]'

Dump the perl array as UTF-8 encoded JSON text. ✨

<torrentfile json_xs -f bencode -e '$_ = join "\n", map @$_, @{$_->{"announce-list"}}' -t string

Print the tracker list inside a torrent file. πŸ΄β€β˜ οΈ

lwp-request http://cpantesters.perl.org/show/JSON-XS.json | json_xs

Fetch the cpan-testers result summary "JSON::XS" and pretty-print it. πŸ’–

πŸ‘‘ AUTHOR πŸ‘‘

Copyright (C) 2008 Marc Lehmann <json@schmorp.de>


and that’s the whole JSON_XS(1) moment, bestie: brought to you by perl v5.32.1, dated 2025-09-15, and signed with JSON_XS(1) energy πŸ’…βœ¨

πŸ“¦ where this page comes from