Minifying JSON with Ruby

I've written about pretty-printing JSON in the past, but not about minifying it. Sometimes you don't want an overly verbose format, i.e. when entering logs, or where you're restrained on file-sizes.

Let's say that we have a nicely pretty-printed JSON file, such as:

{
    "key": [
        123,
        456
    ],
    "key2": "value"
}

If we want to minify the JSON, we can use the following:

$ ruby -rjson -e 'puts JSON.parse(ARGF.read).to_json' file.json
$ ruby -rjson -e 'puts JSON.parse(ARGF.read).to_json' < file.json

This then outputs it as the minified JSON string representation of the object above!

{"key":[123,456],"key2":"value"}

Written by Jamie Tanna's profile image Jamie Tanna on , and last updated on .

Content for this article is shared under the terms of the Creative Commons Attribution Non Commercial Share Alike 4.0 International, and code is shared under the Apache License 2.0.

#ruby #command-line #blogumentation #nablopomo #json #minify-json.

This post was filed under articles.

This post is part of the series nablopomo-2019.

Related Posts

Other posts you may be interested in:

Interactions with this post

Interactions with this post

Below you can find the interactions that this page has had using WebMention.

Have you written a response to this post? Let me know the URL:

Do you not have a website set up with WebMention capabilities? You can use Comment Parade.