JSON::ize - Use JSON easily in one-liners
$ perl -MJSON::ize -le '$j=jsonize("my.json"); print $j->{thingy};' # if you have PerlIO::gzip, this works $ perl -MJSON::ize -le '$j=jsonize("my.json.gz"); print $j->{thingy};' $ perl -MJSON::ize -le 'J("my.json"); print J->{thingy};' # short $ perl -MJSON::ize -le 'print J("my.json")->{thingy};' # shorter $ cat my.json | perl -MJSON::ize -lne 'parsej; END{ print J->{thingy}}' # another way $ perl -MJSON::ize -le '$j="{\"this\":\"also\",\"works\":[1,2,3]}"; print jsonize($j)->{"this"};' # also $ perl -MJSON::ize -e 'pretty_json(); $j=jsonize("ugly.json"); print jsonize($j);' # pretty! $ perl -MJSON::ize -e 'ugly_json; print J(J("indented.json"));' # strip whsp
JSON::ize exports a function, jsonize(), that will do what you mean with the argument. If argument is a filename, it will try to read the file and decode it as JSON. If argument is a string that looks like JSON, it will try to encode it. If argument is a Perl hashref or arrayref, it will try to encode it.
jsonize()
The underlying JSON object is
$JSON::ize::JOBJ
Try to DWYM. If called without argument, return the last value returned. Use this to retrieve after "parsej".
Parse a piped-in stream of json. Use jsonize() (without arg) to retrieve the object. (Uses "incr_parse" in JSON.)
Output pretty (indented) json.
Output json with no extra whitespace.
JSON, JSON::XS.
Mark A. Jensen CPAN: MAJENSEN mark -dot- jensen -at- nih -dot- gov
Copyright (c) 2018 Mark A. Jensen.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
To install JSON::ize, copy and paste the appropriate command in to your terminal.
cpanm
cpanm JSON::ize
CPAN shell
perl -MCPAN -e shell install JSON::ize
For more information on module installation, please visit the detailed CPAN module installation guide.