DOKK / manpages / debian 12 / libcpanel-json-xs-perl / cpanel_json_xs.1p.en
CPANEL_JSON_XS(1p) User Contributed Perl Documentation CPANEL_JSON_XS(1p)

cpanel_json_xs - Cpanel::JSON::XS commandline utility

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

cpanel_json_xs converts between some input and output formats (one of them is JSON).

The default input format is "json" and the default output format is "json-pretty".

Be slightly more verbose.
Read a file in the given format from STDIN.

"fromformat" can be one of:

Write the file in the given format to STDOUT.

"toformat" can be one of:

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.

   cpanel_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.

   <src.json cpanel_json_xs >pretty.json

Prettify the JSON file src.json to dst.json.

   cpanel_json_xs -f storable-file <file

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

   cpanel_json_xs -f storable-file -t yaml <file

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

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

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

   <torrentfile cpanel_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/Cpanel-JSON-XS.json | cpanel_json_xs

Fetch the cpan-testers result summary "Cpanel::JSON::XS" and pretty-print it.

    cpanel_json_xs -f yaml-xs -t yaml-tiny <META.yml   >MYMETA.yml
    cpanel_json_xs -f yaml-tiny -t yaml-xs <MYMETA.yml >XSMETA.yml
    cpanel_json_xs -f yaml -t yaml <XSMETA.yml #BOOM!
    Error: YAML_LOAD_ERR_BAD_MAP_ELEMENT

Compare YAML en- and decoders, and see that YAML::XS generates unparsable YAML <https://github.com/ingydotnet/yaml-libyaml-pm/issues/9>

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

2023-02-25 perl v5.36.0