Skip to content
/ fx5 Public

A CLI is a JSON5 processing tool by node.js

Notifications You must be signed in to change notification settings

MaxMEllon/fx5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fx5

Installation

$ npm i -g @maxmellon/fx5

Usage

example1

$ echo '{"menu": {
  "id": "file",
  "value": "File",
  "popup": {
    "menuitem": [
      {"value": "New", "onclick": "CreateNewDoc()"},
      {"value": "Open", "onclick": "OpenDoc()"},
      {"value": "Close", "onclick": "CloseDoc()"}
    ]
  }
}}
' | fx5 'x => x.menu.popup.menuitem'
[
  {
    "value": "New",
    "onclick": "CreateNewDoc()"
  },
  {
    "value": "Open",
    "onclick": "OpenDoc()"
  },
  {
    "value": "Close",
    "onclick": "CloseDoc()"
  }
]

example2

$ echo '{"menu": {
  "id": "file",
  "value": "File",
  "popup": {
    "menuitem": [
      {"value": "New", "onclick": "CreateNewDoc()"},
      {"value": "Open", "onclick": "OpenDoc()"},
      {"value": "Close", "onclick": "CloseDoc()"}
    ]
  }
}}
' | fx5 'x => x.menu.popup.menuitem.reduce((acc, cur) => acc + cur.value + " ", "")'
New Open Close

example3

  • pipeline-operator
$ echo '{"menu": {
  "id": "file",
  "value": "File",
  "popup": {
    "menuitem": [
      {"value": "New", "onclick": "CreateNewDoc()"},
      {"value": "Open", "onclick": "OpenDoc()"},
      {"value": "Close", "onclick": "CloseDoc()"}
    ]
  }
}}
' | fx5 'x => x.menu |> Object.keys'
[
  "id",
  "value",
  "popup"
]

Requirements

  • node >= 9

Inspired

Special Thanks!!!!

About

A CLI is a JSON5 processing tool by node.js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published