GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
JOSE-FMT(1)   JOSE-FMT(1)

jose-fmt - Converts JSON between serialization formats

jose fmt [OPTIONS]

This jose fmt command provides a mechanism for building and parsing JSON objects from the command line. It operates as a simple stack machine. All commands operate on the TOP item of the stack and, occasionally, the PREV item of the stack. Commands that require a specific type of value will indicate it in parentheses. For example: "TOP (arr.)".

This program returns 0 on success or the index of the option which failed.

-0, --null : Assert TOP to be null

-a, --append : Append TOP to the end of PREV (arr.)

-a, --append : Set missing values from TOP (obj.) into PREV (obj.)

-A, --array : Assert TOP to be an array

-B, --boolean : Assert TOP to be a boolean

-c, --copy : Deep copy TOP, push onto TOP

-d NAME, --delete=NAME : Delete NAME from TOP (obj.)

-d , --delete= : Delete # from TOP (arr.)

-d -, --delete=- : Delete # from the end of TOP (arr.)

-e, --empty : Erase all items from TOP (arr./obj.)

-E, --equal : Assert TOP to be equal to PREV

-f FILE, --foreach=FILE : Write TOP (obj./arr.) to FILE, one line/item

-f -, --foreach=- : Write TOP (obj./arr.) to STDOUT, one line/item

-F, --false : Assert TOP to be false

-g NAME, --get=NAME : Get item with NAME from TOP (obj.), push to TOP

-g , --get= : Get # item from TOP (arr.), push to TOP

-g -, --get=- : Get # item from the end of TOP (arr.), push to TOP

-i , --insert= : Insert TOP into PREV (arr.) at #

-I, --integer : Assert TOP to be an integer

-j JSON, --json=JSON : Parse JSON constant, push onto TOP

-j FILE, --json=FILE : Read from FILE, push onto TOP

-j -, --json=- : Read from STDIN, push onto TOP

-l, --length : Push length of TOP (arr./str./obj.) to TOP

-M , --move= : Move TOP back # places on the stack

-N, --number : Assert TOP to be a number

-o FILE, --output=FILE : Write TOP to FILE

-o -, --output=- : Write TOP to STDOUT

-O, --object : Assert TOP to be an object

-q STR, --quote=STR : Convert STR to a string, push onto TOP

-Q, --query : Query the stack by deep copying and pushing onto TOP

-R, --real : Assert TOP to be a real

-s NAME, --set=NAME : Sets TOP into PREV (obj.) with NAME

-s , --set= : Sets TOP into PREV (obj.) at #

-s -, --set=- : Sets TOP into PREV (obj.) at # from the end

-S, --string : Assert TOP to be a string

-t , --truncate= : Shrink TOP (arr.) to length #

-t -, --truncate=- : Discard last # items from TOP (arr.)

-T, --true : Assert TOP to be true

-u FILE, --unquote=FILE : Write TOP (str.) to FILE without quotes

-u -, --unquote=- : Write TOP (str.) to STDOUT without quotes

-U, --unwind : Discard TOP from the stack

-x, --extend : Append items from TOP to the end of PREV (arr.)

-x, --extend : Set all values from TOP (obj.) into PREV (obj.)

-X, --not : Invert the following assertion

-y, --b64load : URL-safe Base64 decode TOP (str.), push onto TOP

-Y, --b64dump : URL-safe Base64 encode TOP, push onto TOP

Extract the alg parameter from a JWE Protected Header:

$ jose fmt -j "$jwe" -Og protected -yOg alg -Su-
A128KW

List all JWKs in a JWKSet (one per line):

$ echo "$jwkset" | jose fmt -j- -Og keys -Af-
{"kty":"oct",...}
{"kty":"EC",...}

Change the algorithm in a JWK:

$ echo "$jwk" | jose fmt -j- -j '"A128GCM"' -s alg -Uo-
{"kty":"oct","alg":"A128GCM",...}

Build a JWE template:

$ jose fmt -j '{}' -cs unprotected -q A128KW -s alg -UUo-
{"unprotected":{"alg":"A128KW"}}

Nathaniel McCallum <npmccallum@redhat.com>
04/07/2022  

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.