CADESUser DocumentationGlobus OverviewGlobus Command Line Interface

Globus Command Line Interface (CLI)

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
      $ globus endpoint search 'CADES OR'
      ID                                   | Owner                 | Display Name  
      ------------------------------------ | --------------------- | --------------
      57230a10-7ba2-11e7-8c3b-22000b9923ef | cades@globusid.org    | CADES-OR
    
  • Endpoint Management
    • Use variables for endpoint IDs: Endpoint IDs are cumbersome. You cannot rename them, but you can store them as variables. For example:
        epCADESOR=57230a10-7ba2-11e7-8c3b-22000b9923ef
      
      Now you can use the variable to display information and manage files (with truncated output):
        $ globus endpoint show $epCADESOR
        Display Name:              CADES-OR
        ID:                        57230a10-7ba2-11e7-8c3b-22000b9923ef
        Owner:                     cades@globusid.org
        Activated:                 True
        Shareable:                 True
        Department:                CADES
        Organization:              Oak Ridge National Lab
        Department:                CADES
        Visibility:                True
        Default Directory:         /~/
        Force Encryption:          False
        Managed Endpoint:          True
      
    • Make a directory:
        globus mkdir $epCADESOR:~/example_dir
      
    • List the contents of a directory:
        $ globus ls $epCADESOR:~/
        example_dir/
        cades-user-guide.pdf
        hello-world.c
        hello-world.pbs
      
    • File transfer between endpoints:
      • First, search for a second endpoint. Then set that endpoint as a Bash variable.
          $ globus endpoint search 'OLCF ATLAS'
          ID                                   | Owner             | Display Name
          ------------------------------------ | ----------------- | ------------
          ef1a9560-7ca1-11e5-992c-22000b96db58 | olcf@globusid.org | OLCF ATLAS  
          $ epATLAS=ef1a9560-7ca1-11e5-992c-22000b96db58
        
      • Make a single file transfer.
          globus transfer $epCADESOR:/cades-user-guide.pdf $epATLAS:~/cades-user-guide.pdf \
          --label "user-guide"
        
      • Make a batch transfer.
          $ globus transfer $epCADESOR:/example_dir/ $epATLAS:~/ \
          --batch --label "CADES Batch" < in.txt
        

results matching ""

    No results matching ""