Shell script

A shell script is UNIX terminology for a batch file, it is usually used on OS/2 to mean an 7 bit ASCII or less commonly 8 bit ISO plain text file with an ".sh" ending, that has a list of commands intended for batch execution in one of the UNIX derived shells, such as the Bourne Shell or Korn Shell.

A shell by the way is UNIX terminology for a command line interface (CLI).

Note that while there is some degree of commonality between shell scripts for the various UNIX or UNIX like CLI's and it is a good rule to try to write such scripts using only commands that all shells support, you will always encounter scripts from time to time that are tied to a specific shell implementation, either by use of commands not universally supported or by the use of environment variables that behave differently between different shell implementations. It is best to know what shell each script is intended for, but even though the target shell does not have a currently maintained OS/2 version some shells also offer backwards compatibility with other and/older shell implementations.

OS/2 shells with UNIX script file execution capabilities

 * Hamilton C Shell - Commercial - Discontinued
 * Mksh - Open source - Current
 * MKS OS/2 Toolkit - Includes Kornshell - Commercial - Discontinued

OS/2 text & programmers editors with .sh support

 * Elvis - Shell script syntax support included by default - Open source - Current.
 * jEdit - Java based editor - Shell script syntax highlighting built in - Current.
 * NEdit - XFree86 - Autoindent, autocomplete and syntax highlighting.

Shell script related programmer's utilities

 * Exuberant ctags - Creates index files out of Bourne/Korn/Z Shell script source files - Open source - Current.

DOS text & programmers editors with .sh support

 * Elvis - Shell script syntax support included by default - Open source - Current