Globus Command Line Interface

If you wish to utilize the Globus transfer tools from the command line, you can download the Globus Command Line Interface (CLI). It is available as a Python package.

Installing the Required Tools

Since the tool is a Python package, you will need Python installed, as well as the pip installer.

  • Ubuntu:

    sudo apt-get install python   
    sudo apt-get install python-pip
    export PATH="~/.local/bin:$PATH"
    echo 'export PATH="~/.local/bin:$PATH"' >> "$HOME/.bashrc"
  • CentOS:

    sudo yum install python   
    sudo yum install python-pip
    export PATH="~/.local/bin:$PATH"
    echo 'export PATH="~/.local/bin:$PATH"' >> "$HOME/.bashrc"
  • macOS:

    sudo easy_install python   
    sudo easy_install pip
    export PATH="~/.local/bin:$PATH"
    echo 'export PATH="~/.local/bin:$PATH"' >> "$HOME/.bashrc"

    Some versions of Python will not be installed in ~/.local. If you have trouble getting globus commands to execute, try the following commands to change the path:

    GLOBUS_CLI_INSTALL_DIR="$(python -c 'import site; print(site.USER_BASE)')/bin"   
    echo "GLOBUS_CLI_INSTALL_DIR=$GLOBUS_CLI_INSTALL_DIR"
    export PATH="$GLOBUS_CLI_INSTALL_DIR:$PATH"   
    echo 'export PATH="'"$GLOBUS_CLI_INSTALL_DIR"':$PATH"' >> "$HOME/.bashrc"
  • Windows:

    • The Windows package manager "Chocolatey" is recommended for installation. See here for Chocolatey installation instructions.

    • To install Python and pip, see here.

  • All Operating Systems: To install the Globus CLI, use the following command: pip install --upgrade --user globus-cli.

Optional: if you wish to use the Globus CLI from within a python virtual environment, see instructions here. Otherwise, you may continue using this guide.

To start, you will need to log in to Globus: globus login. Follow the instructions to get logged in. A browser window may appear.

To make sure that your login was successful, type globus get-identities 'go@globusid.org'. A successful output will look something like this: c698d42e-d274-11e5-bf75-1fc5bf53bb56.

Globus CLI Basics

  • Endpoint Search

  • Endpoint Management

    • Use variables for endpoint IDs: Endpoint IDs are cumbersome. You cannot rename them, but you can store them as variables. For example:

      Now you can use the variable to display information and manage files (with truncated output):

    • Make a directory:

    • List the contents of a directory:

    • File transfer between endpoints:

      • First, search for a second endpoint. Then set that endpoint as a Bash variable.

      • Make a single file transfer from epCCLAHPC to epGLOBUS1.

      • Make a batch transfer.

Last updated