Osh (Object SHell) is a tool that integrates the processing of
structured data, database access, and remote access to a cluster of
nodes. These capabilities are made available through a command-line
interface (CLI) and a Python application programming interface (API).
Osh processes streams of Python objects using simple
commands. Complex data processing is achieved by command sequences in
which the output from one command is passed to the input of the
next. This is similar to composing Unix commands using pipes.
However, Unix commands pass strings from one command to the next, and
the commands (grep, awk, sed, etc.) are heavily string-oriented. Osh
commands send primitive Python types such as strings and numbers;
composite types such as tuples, lists and maps; objects representing
files, dates and times; or even user-defined objects.