These docs are under active development and cover the v0.20 Kobicha security model.
On this page
reference 1 min read

Output and evaluation

This topic gathers the small, sharp commands that scripts are built from: the ones that print something, that read or set the environment, that evaluate an expression or a condition, and that simply succeed or fail.

This page is the map.

The commands

Producing text

Command Purpose
echo Print its arguments as a line of text.
printf Print text from a format string, with precise control over layout.
yes Print a line over and over, without stopping.
seq Print a sequence of numbers.

The environment

Command Purpose
env Run a command with a modified environment — or print the current one.
printenv Print environment variables.

Numbers

Command Purpose
numfmt Convert numbers to and from human-readable forms (1.5G, 1000000).
factor Print the prime factors of a number.

Evaluating

Command Purpose
expr Evaluate an arithmetic, string, or comparison expression.
test Evaluate a condition — a file check or a comparison — as a true/false result.

Exit status

Command Purpose
true and false Do nothing, and succeed — or do nothing, and fail.

A note on exit status

Several commands here exist to be used for their exit status rather than their output. Every command, when it finishes, leaves behind a number: 0 means success, anything else means a kind of failure. A shell's if, &&, and || all act on that number.

test is the clearest case — it prints nothing and exists only to set an exit status from a condition. true and false are the most minimal: fixed success and fixed failure. Where this topic's pages give an exit-status table, that number is often the whole point of the command.

Where to start

For everyday printing, echo; for anything that needs columns, padding, or precise formatting, printf.

See also