Topics Map > Research Computing
Euler: Shell Support
Shell Support on Euler
Overview
Most user interactions with Euler take place through a text-based shell program. While most shells are robust command interpreters which provide users with a plethora of useful features and scripting options, not all shells are built the same. This guide aims to explain the different shells that are available on Euler and to inform users of the features each shell is able to support.
Euler Support
CAE makes a variety of shells available to users, but only a subset of those options provide the full set of Euler features. Due to the complexity of maintaining scripts and documentation, CAE is unable to provide the same level of technical support for all of the options.
The following feature matrix shows some common features and whether they are supported on Euler.
Key:
- X: Fullly supported by default
- —: Supported, but requires user intervention
- (empty): Not supported
feature | zsh | bash | tcsh | fish | sh | csh1 | ksh |
---|---|---|---|---|---|---|---|
Technical Support | X | X | —2 | —2 | —2 | ||
CAE-managed defaults | X | X | X | ||||
Load environment modules | X | X | — | X | — | — | — |
Environment modules in scripts | X | — | — | X | — | — | — |
Full conda environment support | X | X | — | X | |||
Supported by 3rd-party compilers | X | X | — | X | — |
Zsh is the recommended shell for Euler due to its feature completeness, but CAE continues to support bash due to its ubiquity as the default system shell on most Linux and Unix platforms.
If your preferred shell is not supported on Euler or if you want to try a different one, you can always change your default shell.
Background: Shells at CAE
At the time of this writing3, CAE's Linux and Unix platforms have some degree of support for the following shells:
- bash - The GNU Bourne-again Shell
- tcsh - "The C Shell with file name completion and command line editing"
- zsh - Z shell
- fish - "The friendly interactive shell"
- ksh - The ATT KornShell by David Korn
- sh - POSIX-compliant Shell
- csh - The BSD C shell
The default3 shell for new CAE accounts is bash
. Bash is suitable for the vast majority of users due to its ubiquity, its similarity to the POSIX bourne shell, and myriad convenience features.
How to change your default shell
CAE accounts are managed using a proprietary service, so the common chsh
utility is not capable of updating the Unix shell associated with your account. Instead, we provide a self-service page which allows you to select a default from one of the shells supported by our Unix systems.
It can take some time for changes made in the webpage to propagate to Euler and other Linux and Unix systems. Typically, you will need to wait a few minutes, disconnect from the system, and reconnect in order for the changes to take effect.
On Euler, csh
is a symbolic link which invokes tcsh
with some features disabled.
These shells are known to be usable on Euler, but CAE only provides the bare minimum of technical support for shell-specific problems.
As of Summer 2024