You will find a familiar environment, similar to other ECMWF platforms. Bash and Ksh are available as login shells, with Bash being the recommended option.

Note that CSH is not available. If you are still using it, please move to a supported shell.

Changing your shell

If you wish to change your default shell, please let us know via the ECMWF Support Portal and we will implement that change for you.

Once updated, note the change will only affect new sessions opened after it comes into effect.

Shell initialisation and configuration files

By default, none of the following files may be present on your account, and you will get the default settings for the system. However, you may want to customise your environment to add new variables, functions or aliases to your sessions or jobs.

FileWhen is it sourced?Who sources it?What is it for?
$HOME/.profile
each login and job executionBash and kshSuitable for your own login session settings (e.g. PATH).
$HOME/.bash_profile
each bash login and job executionBash only

Suitable for your own login session settings that must only run once for the session or job (e.g. PATH).

It overrides .profile if present

$HOME/.bashrc
each bash interactive non-login shellBash only

Suitable for your own functions and aliases to load for interactive non-login sessions.

It is not loaded automatically on login sessions

$HOME/.bash_logout
each bash exit and end of jobBash onlySuitable for your own cleanup settings at the end of the session or job
$HOME/.kshrc
each ksh login and job executionksh onlySuitable for your own settings to load for interactive shells

Suggested settings for Bash users

If bash is your login shell and you would like to customise your environment without having to split content between ~/.bash_profile and ~/.bashrc, you could do the following:

  • Make sure your ~/.bash_profile contains the following snippet:

    ~/.bash_profile
    if [ -f ~/.bashrc ]; then
        . ~/.bashrc
    fi
  • Add in your ~/.bashrc all your environment variable definitions, functions and aliases.