Skip to main content

Command-Line Interface

The Fix Inventory CLI offers a variety of commands that allow you to interact with Fix Inventory via Fix Inventory Shell.

tip

You can pipe commands using | and chain commands using ;.

Search Commands

CommandDescription
aggregateAggregate this query by the provided specification
ancestorsSelect all ancestors of this node in the graph
countCount incoming elements or sum defined property
descendantsSelect all descendants of this node in the graph
historySearch the history of nodes.
kindsRetrieves information about the graph data kinds
predecessorsSelect all predecessors of this node in the graph
searchSearch the graph
successorsSelect all successors of this node in the graph
templateAccess the query template library

Format Commands

CommandDescription
dumpDump all properties of incoming objects
formatTransform incoming objects as string with a defined format
listTransform incoming objects as string with defined properties

Action Commands

CommandDescription
awsExecute commands on AWS resources
cleanMark all incoming database objects for cleaning
httpPerform HTTP request with incoming data
jobManage all jobs
protectMark all incoming database objects as protected
set_desiredAllows to set arbitrary properties as desired for all incoming database objects
set_metadataAllows to set arbitrary properties as metadata for all incoming database objects
tagUpdate a tag with provided value or delete a tag
workflowManage all workflows

Setup Commands

CommandDescription
certificateCreate TLS certificates
configManage configuration settings
systemAccess and manage system-wide properties
userAccess and manage Fix Inventory users

Other Commands

CommandDescription
appManage infrastructure apps
chunkChunk incoming elements in batches
echoSend the provided message to downstream
envRetrieve the environment and pass it to the output stream
flattenTake incoming batches of elements and flattens them to a stream of single elements
headReturn n first elements of the stream
helpShows available commands, as well as help for any specific command
jqFilter and process JSON
jsonParse JSON and pass parsed objects to the output stream
reportGenerate reports
sleepSuspend execution for an interval of time
tailReturn n last elements of the stream
uniqRemove all duplicated objects from the stream
writeWrites the incoming stream of data to a file in the defined format

Custom Commands

It is possible to create your own commands by combining existing commands with your own logic.

In Fix Inventory Shell, type config edit fix.core.commands. This will open a file and show all available custom commands.

Custom Command Properties

Custom commands have the following properties:

PropertyDescription
nameCustom command name
templateCommand template
infoCommand description to be display when users execute help my-custom-command
parametersList of placeholder parameters *

* All parameters without default values need to be defined in order to use the custom command.

Custom Command Example

Example custom command
info: 'Say Hi to the user.'
name: 'hello'
parameters:
- name: 'person'
default: 'world'
description: 'The person to greet.'
template: 'echo Hello {{person}}.'

Once a custom command has been defined in the fix.core.commands configuration, the command can be executed in Fix Inventory Shell:

Usage of the new hello command
> help hello
# output omitted for brevity
> hello
Hello world.
> hello person="John Doe"
Hello John Doe.
note

Custom commands are defined globally, so they can be executed by any Fix Inventory user.

Placeholder Strings

Placeholders are not case sensitive. You can use @utc@ or @UTC@ and will get the same result.

PlaceholderExample
@UTC@2022-02-16T14:23:31Z
@NOW@2022-02-16T15:23:31+0200
@DAY@16
@FRIDAY@2022-02-18
@HOUR@15
@MINUTE@23
@MONDAY@2022-02-21
@MONTH@02
@SATURDAY@2022-02-19
@SECOND@31
@SUNDAY@2022-02-20
@THURSDAY@2022-02-17
@TIME@15:23:31
@TODAY@2022-02-16
@TOMORROW@2022-02-17
@TUESDAY@2022-02-22
@TZ@CET
@TZ_OFFSET@+0100
@WEDNESDAY@2022-02-16
@YEAR@2022
@YESTERDAY@2022-02-15

Keyboard Shortcuts

Fix Inventory Shell supports most common Unix shell keyboard shortcuts.

ShortcutDescription
Ctrl + D on an empty lineExit the shell (same as quit)
Ctrl + LClear the entire terminal but not the current line (redraw)
Ctrl + CCancel input for the current line
Ctrl + UClear from cursor to beginning of line
Ctrl + KClear from cursor to end of line
Ctrl + HClear one character to the left of the cursor (same as Backspace)
Ctrl + DClear one character to the right of the cursor
Esc + BackspaceClear one word to the left of the cursor
Esc + DClear one word to the right of the cursor
Alt + Jump to the beginning of the previous word
Alt + Jump to the beginning of the next word
Ctrl + AJump to start of line
Ctrl + EJump to end of line
Ctrl + RReverse search history
Step backwards in history
Step forward in history