qtcsh(1) tcsh with transparent remote execution by use of qrsh

SYNTAX

qtcsh [ tcsh options | -ABLR ]

DESCRIPTION

Qtcsh is an extension to the popular derivative tcsh. It allows the transparent remote execution of commands entered in qtcsh controlled via Grid Engine. Qtcsh can be used as interactive command interpreter as well as for the processing of tcsh shell scripts.

When invoked, qtcsh identifies which commands are to be run remotely and which are not. For this purpose the files <sge_root>/<cell>/common/qtask and ~/.qtask are processed. Each line in these files defines a command that is intended to be run remotely (see for a definition of the file format). The .qtask file in the user's home directory contains the user's remote task specification, while the file in the common directory is maintained by the administrator and defines a cluster-wide default behavior. The contents of the administrator supplied file are completely overridden in case there is an appropriate entry in the users file. This is prevented in case an exclamation mark is prefixed to the command name in the administrators qtask file.

Qtcsh always attempts to start the designated tasks remotely via Exceptions are

  • if the user enters such commands via a relative or absolute pathname instead of the stand-alone command name (see for more information);
  • if the environment variable JOB_ID is set and thus qtcsh assumes that execution already happens remotely within a Grid Engine job and thus executes tasks locally. This avoids unwanted recursions but can be overridden by the command-line option -R and the built-in command qrshmode -R (see corresponding descriptions below);
  • if qtcsh cannot establish a connection of Grid Engine during start-up. This allows using qtcsh as a login shell without the danger of being blocked when no Grid Engine service is available.

Qtcsh can operate in three different modes determining whether

  • tasks are executed remotely;
  • immediate or batch execution is requested;
  • status output is verbose or only in case of any errors.

These modes either can be controlled by the command-line switches described below during qtcsh invocation or within an executing qtcsh via the built-in command qrshmode, as described in section BUILT-IN COMMANDS.

OPTIONS

The options listed below are specific to qtcsh. The user is referred to the documentation for the explanation of further options.

-A
Switches qtcsh into verbose mode, causing diagnostic output in case of remote execution.
-B
Switches remote task execution into batch mode. Tasks submitted to Grid Engine will be queued if they cannot start immediately. As a consequence, qtcsh may block until the queued task can be started by Grid Engine. While this behavior probably is undesirable during an interactive session, it may be very useful for execution of shell scripts through qtcsh, as it avoids failure of the scripts due to temporarily unavailable resources for particular tasks.
-L
Switches off the default behavior of remote execution of commands. Causes all commands to be executed locally even if they are contained in one of the files.
-R
Enforces remote execution of commands even if JOB_ID is set as environment variable.

BUILT-IN COMMANDS

This section only describes additional shell builtin commands which are not available in standard

qrshmode [-ANBILR]
Without options, the current operational mode of qtcsh is displayed. The options have the following effect:

-A   switch to verbose output mode
-N   switch to non-verbose output mode
-B   switch to batch execution mode
-I   switch to immediate execution mode
-L   always execute commands locally
-R   execute configured commands remotely

ENVIRONMENT VARIABLES

SGE_ROOT
Specifies the location of the Grid Engine standard configuration files.
SGE_CELL
If set, specifies the default Grid Engine cell. To address a Grid Engine cell qtcsh uses (in the order of precedence):

The name of the cell specified in the environment variable SGE_CELL, if it is set.

The name of the default cell, i.e. default.

SGE_DEBUG_LEVEL
If set, specifies that debug information should be written to stderr. In addition the level of detail in which debug information is generated is defined.
SGE_QMASTER_PORT
If set, specifies the tcp port on which is expected to listen for communication requests. Most installations will use a services map entry for the service "sge_qmaster" instead to define that port.
JOB_ID
If set when starting qtcsh the local operation mode is activated implicitly as if the -L option was specified.

FILES

~/.qtask       user qtask file.
<sge_root>/<cell>/common/qtask
               cluster qtask file.

COPYRIGHT

Qtcsh is an adaptation of tcsh which is copyrighted by The Regents of the University of California.

See and the information provided in <sge_root>/doc/LICENCES for a statement of further rights and permissions.