Table of contents

## Shasta commands

Shasta is most commonly used to run an assembly. However, it offers additional utility functions via command line option `--command`. Following `--command`, you specify a command name which can be one of the following:

- `assemble`
- `cleanupBinaryData`
- `createBashCompletionScript`
- `explore`
- `listCommands`
- `listConfiguration`
- `listConfigurations`
- `saveBinaryData`

You can also use the following to get an up to date list of valid Shasta commands:
`shasta --command listCommands`
The default command is `assemble`, so you don't need to use the `--command` option to run an assembly.

The rest of this page provides a brief description of the functionality offered by each of these commands.

### Command `assemble`

This is the default command and is used to run an assembly. See here for more information.

### Command `cleanupBinaryData`

This command is used to unmount the filesystem in memory used to hold Shasta binary data, mounted at the `Data` directory under the assembly directory. It frees the memory (in 4 Kb or 2 MB pages depending on the setting of `--memoryBacking`) used to store data in the filesystem.

It also removes the `Data` directory. If a `DataOnDisk` directory exists, it creates a symbolic link named `Data`. This makes it possible to use the Shasta http server functionality and Python API even after the binary data are no longer in memory, as long as they were saved on disk using `--command saveBinaryData`.

This command may require root privilege via `sudo`, depending on the setting of `--memoryBacking`. See here for more information.

### Command `createBashCompletionScript`

Running this command creates a Bash completion script that completes Shasta commands to facilitate typing. The script is named `shastaCompletion.sh` and can be invoked from a Bash shell as follows: `source shastaCompletion.sh`

See here for more information.

### Command `explore`

This command starts Shasta in a mode that behaves as an http server. You can use a browser to connect to it and visualize detailed information about your assembly, and this requires the binary data for the assembly to be available. See here for more details.

### Command `listCommands`

This command prints an updated list of all valid commands known to the Shasta executable being invoked.

### Command `listConfiguration`

A configuration is a built-in set of Shasta command line options that can be selected by name. To print details of a specific configuration, use: `shasta --command listConfiguration --config Name` For example, `shasta --command listConfiguration --config Nanopore-Sep2020` To see a list of available configuration names, use `shasta --command listConfigurations`

You can also create a configuration with command line options that you select and store it in a file. See here for more information.

### Command `listConfigurations`

A configuration is a built-in set of Shasta command line options that can be selected by name. This command prints a list of the available configurations. See here for more information.

### Command `saveBinaryData`

This command is used to save Shasta binary data. Shasta stores binary data in directory `Data` in the assembly directory. This command makes a copy on disk in `Data`. You will usually want to run `--command cleanupBinaryData` after this command completes.

This command may require root privilege via `sudo`, depending on the setting of `--memoryBacking`. See here for more information.

Table of contents