SCIFIO command line tools
Java Shell
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

SCIFIO Command Line Tools

An extensible application for using SCIFIO components from the command line.


The easiest way to run the SCIFIO command line tools is via the jrun launcher.

Add the following to your .jrunrc:

scifio = io.scif:scifio-cli

imagej.public =

And then run:

jrun scifio

The first time you run it, it will bootstrap the libraries into your Maven local repository cache (typically in ~/.m2/repository) and symlinked them into the jrun cache (typically at ~/.jrun/io.scif/scifio-cli). Subsequent invocations will be much faster.

Building from source

If you would like to build the SCIFIO command-line tools from scratch, simply run:

mvn clean install

from the top-level SCIFIO directory. You should see three projects completed: "SCIFIO projects", "SCIFIO Core" and "SCIFIO Tools." After installation, the tools will be installed to tools/target/appassembler/. Here you will find the directory structure detailed in the installation section.

Note that there is one caveat in using these tools on *nix operating systems: by default, they will not be created witih execute permissions (per this issue. So, instead of running scifio ... commands as in the usage section, you will have two options:

  • run bash scifio ... instead


  • Add execution permissions to the scifio script, using chmod a+x tools/target/appassembler/bin/scifio

Note also that the zipped scripts (which will also be created as part of the install, in tools/target) will unzip with execute permission already set.


The SCIFIO command-line tools were designed to be syntactically similar to git. So if you already know git, this should feel familiar.

Assuming you have the scripts on your PATH (per installation instructions) executing a command will always take the form of:

scifio <command> [options] <parameters>

NB: in all these examples, use scifio.bat if running in a Windows environment.

The <command> option is the simple lowercase name of the command you want to run. For example, if you wanted to view (using the command) a picture of a kraken, you would use:

scifio show kraken.tiff

If you want to see a list of all available commands, just run the script with no arguments.

Commands may have a set of flags or options available to modify their behavior. All command options are designed to work like unix flags or switches, and typically will have a short (-x) and explicit (--exterminate-kraken) version. You can combine as many of these options as you want. For example, to print an ascii version of the top left 128x128 square of your kraken picture, you could use:

scifio show -A --crop 0,128,0,128 kraken.tiff

If you ever need to see the list of options a command has, and parameters a command requires, each command has a help flag:

scifio show -h or scifio show --help

You can also run the help meta-command:

scifio help show

Don't worry about making mistakes with the command invocation - commands will always print their usage on failure.

Getting help

If you run into any problems or have questions about the commands, or adding new commands, please use the scifio tag on the ImageJ Forum.

Thank you for using the SCIFIO command-line tools!