Skip to content

Invoking GLUE as a Unix Command

Robert J. Gifford edited this page Dec 4, 2024 · 6 revisions

GLUE is designed to integrate seamlessly into diverse bioinformatics workflows, providing flexible and powerful command-line capabilities. By invoking GLUE as a Unix command, users can execute GLUE commands interactively, in batch mode, or inline within broader computational pipelines. This versatility makes it a valuable tool for various computational contexts, from interactive analysis to programmatic execution within larger software systems.


Key Features of GLUE Command-Line Interface

  1. Cross-Platform Support
    GLUE relies on a minimal set of mature, high-quality, cross-platform components, ensuring compatibility with Unix, Linux, macOS, and other operating systems.

  2. Integration and Automation
    GLUE's command-line interface allows easy integration into bioinformatics workflows. It supports importing/exporting data in multiple formats and includes scripting capabilities, enabling automation and customization.

  3. Web Service Deployment
    GLUE can be deployed within a standard web server, exposing its functionality via standard web service protocols. This makes it suitable for developing interactive public websites, programmatic services, or integrating into organizational microservices.

  4. Batch and Inline Execution
    GLUE supports batch mode for running predefined command sequences from files and inline execution for single commands, enabling rapid experimentation and task-specific automation.


Basic Usage

To invoke GLUE, use the gluetools.sh script with appropriate options. Below is an example of the help command:

MacDesktop:framework robertgifford$ gluetools.sh -h
Usage:
  gluetools [-c <c-file>] -v
  gluetools [-c <c-file>] -h
  gluetools [-c <c-file>] [-p <c-opt>]... [-mECO] [-i <word>...]
  gluetools [-c <c-file>] [-p <c-opt>]... [-nmECO] -f <b-file>

Command-Line Options

Option Description
-h, --help Display usage and options, then exit.
-v, --version Display version information and exit.
-n, --non-interactive Prevent interactive mode after executing commands in batch or inline mode.
-f <b-file>, --batch-file <b-file> Execute a batch of commands from the specified file.
-i <word>..., --inline-cmd Run a single command inline and exit.
-c <c-file>, --config-file <c-file> Configure GLUE using the specified configuration file.
-p <c-opt>, --console-option <c-opt> Apply inline console options in name:value format.
-E, --no-cmd-echo Suppress echoing of batch/inline commands during execution.
-C, --no-comment-echo Suppress echoing of comments in batch/inline commands.
-O, --no-output Suppress output of batch/inline command results.
-m, --migrate-schema Automatically migrate the database schema if necessary.

Examples

  1. Run Commands Interactively To start GLUE in interactive mode:
gluetools.sh
  1. Execute Commands Inline To run a single command inline:
gluetools.sh -i "project example list sequence"
  1. Batch Mode Execution To run commands from a batch file:
gluetools.sh -f commands.glue
  1. Suppress Command Echo and Output To run commands silently without echoing or showing output:
gluetools.sh -f commands.glue -ECO
  1. Apply Console Options To customize console behavior:
gluetools.sh -p cmd-result-format:json -i "project lentivirus list sequence" 

Clone this wiki locally