qtcsh (1) - Linux Manuals

qtcsh: tcsh with transparent remote execution by use of qrsh


qtcsh - tcsh with transparent remote execution by use of qrsh


qtcsh [ tcsh options | -ABLR ]


Qtcsh is an extension to the popular derivative tcsh. It allows the transparent remote execution of commands entered in qtcsh controlled via xxQS_NAMExx. 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 <xxqs_name_sxx_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 xxQS_NAMExx 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 xxQS_NAMExx during start-up. This allows using qtcsh as a login shell without the danger of being blocked when no xxQS_NAMExx 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.


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

Switches qtcsh into verbose mode, causing diagnostic output in case of remote execution.
Switches remote task execution into batch mode. Tasks submitted to xxQS_NAMExx will be queued if they cannot start immediately. As a consequence, qtcsh may block until the queued task can be started by xxQS_NAMExx. 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.
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.
Enforces remote execution of commands even if JOB_ID is set as environment variable.


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


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

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

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

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.
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.
If set when starting qtcsh the local operation mode is activated implicitly as if the -L option was specified.


~/.qtask       user qtask file.
               cluster qtask file.


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

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


as well as