qsub(1B)

NAME
qsub - submit PBS job

SYNOPSIS
qsub [-a date_time] [-A account_string] [-c interval]
    [-C directive_prefix] [-e path] [-f] [-h]
    [-I [-G [-- <GUI application>]] | [-X]] [-j join] [-J range] [-k keep] [-l resource_list] [-m mail_events] [-M user_list] [-N name] [-o path] [-p priority] [-P project] [-q destination] [-r c] [-R remove] [-S path_list] [-u user_list] [-v variable_list] [-V] [-W additional_attributes] [-z] [script | -- executable [arglist for executable]]
qsub --version

DESCRIPTION
The qsub command is used to submit a batch job to PBS. Submitting a PBS job specifies a task, requests resources and sets job attributes. The qsub command can read from a job script, from standard input, or from the command line. When the user has submitted the job, PBS returns the job identifier for that job. For a job, this is of the form:

    sequence_number.servername

For an array job, this is of the form:

    sequence_number[].servername

During execution, jobs can be interactive or non-interactive. By default, on the first invocation, qsub spawns a background process to manage communication with the PBS server. Later invocations of qsub attempt to communicate with this background process. Under certain circumstances, calls to qsub when it uses the background process can result in communication problems. You can prevent qsub from spawning a background process by using the -f option, although this can degrade performance. Where PBS puts job files
By default, PBS copies the stdout and stderr files from the job back to the current working directory where the qsub command is executed. See the -o and -e options. Submitting jobs by using scripts
To submit a PBS job script, the user types

    qsub [options] scriptname

Scripts can be written in Python, UNIX shells such as csh and sh, Perl, Windows command language, etc. The same Python script can be used on both UNIX/Linux and Windows.
A PBS job script consists of

    Optional shell specification
    Any PBS directives
    The user's tasks: programs, commands or applications

Example of using Python for UNIX/Linux or Windows:
The Python job script named "myjob.py" for a job named "HelloJob" prints "Hello" under UNIX/Linux or Windows:

    #!/usr/bin/python
    #PBS -l select=1:ncpus=3:mem=1gb
    #PBS -N HelloJob
    print "Hello"

To run a Python job script under UNIX/Linux:

    qsub <script name>

To run a Python job script under Windows:

    qsub -S PBS_EXEC\bin\pbs_python.exe <script name>

If the path contains spaces, it must be quoted, for example:

    qsub -S "C:Program Files\PBS Pro\bin\pbs_python.exe" <script name>

Example of a UNIX/LInux job script named "weatherscript" for a job named "Weather1" which runs the executable "weathersim":

    #!/bin/sh
    #PBS -N Weather1
    #PBS -l walltime=1:00:00
    /usr/local/weathersim

To submit the job, the user types:

    qsub weatherscript <return>

Example of a Windows job script:
Example of a script named "weather.exe" for a job named "Weather1" run under Windows:

    #PBS -N Weather1
    #PBS -l walltime=1:00:00
    weathersim.exe

To submit the job, the user types:

    qsub weather.exe <return>

Scripts can contain comments. Under Windows, comments can contain only ASCII characters. See the PBS Professional User's Guide. Python Job Scripts
PBS allows you to submit jobs using a Python script. You can use the same Python script under Windows or UNIX/Linux. PBS includes a Python package, allowing Python job scripts to run; you do not need to install Python. You can include PBS directives in a Python job script as you would in a UNIX shell script. For example:

    cat myjob.py
    #!/usr/bin/python
    #PBS -l select=1:ncpus=3:mem=1gb
    #PBS -N HelloJob
    print "Hello"

Python job scripts can access Win32 APIs, including the following modules:

    Win32api
    Win32con
    Pywintypes

UNIX/Linux Shell Scripts
The first line of a job file can be used to specify which shell to use to execute the script. The default shell is the user's login shell. If the default is not acceptable, you can specify a different shell on the first line. Windows Command Scripts
In Windows, if you use notepad to create a job script, the last line does not automatically get newline-terminated. Be sure to put one explicitly, otherwise, PBS job will get the following error message:

    More?

when the Windows command interpreter tries to execute that last line. Specifying Top Shell
You can specify the top shell for the job:

    qsub -S <path to shell> <script name>

Under UNIX/Linux, you cannot use this option to specify the path to a Python interpreter. Submitting jobs from standard input
To submit a PBS job by typing job specifications at the command line, the user types

    qsub [options] <return>

then types any directives, then any tasks, followed by

    (in UNIX) CTRL-D on a line by itself
    (in Windows) CTRL-Z <return>

to terminate the input. Submitting a job from the qsub command line
To submit a job from the command line, the user types

    qsub [options] -- executable [arguments to executable] <return>

For example, to run myprog with the arguments a and b:

    qsub -- myprog a b <return>

To run myprog with the arguments a and b, naming the job JobA,

    qsub -N JobA -- myprog a b <return>

Requesting resources and placing jobs
Requesting resources includes setting limits on resource usage and controlling how the job is placed on nodes. Resources are requested by using the -l option, either in chunks inside of selection statements, or in job-wide requests using resource_name=value pairs. See the pbs_resources(7B) man page. The selection statement is of the form:

    -l select=[N:]chunk[+[N:]chunk ...]

where N specifies how many of that chunk, and a chunk is of the form:

    resource_name=value[:resource_name=value ...]

Job-wide resource_name=value requests are of the form:

    -l resource_name=value[,resource_name=value ...]

The place statement can contain the following elements, in any order:

    -l place=[ arrangement ][: sharing ][: grouping]

where

    arrangement is one of free | pack | scatter | vscatter
    sharing is one of excl | shared | exclhost
    grouping can have only one instance of group=resource

and where

    free: Place job on any vnode(s).
    pack: All chunks will be taken from one host.
    scatter: Only one chunk with any MPI processes will be taken from a host. A chunk with no MPI processes may be taken from the same node as another chunk.
    vscatter: Only one chunk is taken from any vnode.
    excl: Only this job uses the vnodes chosen.
    exclhost: The entire host is allocated to the job.
    shared: This job can share the vnodes chosen.
    group=resource: Chunks will be grouped according to a resource. This resource must be a string or string array. All nodes in the group must have a common value for the resource, which can be either the built-in resource host or a site-defined node-level resource. The place statement cannot begin with a colon. Note that nodes can have sharing attributes that override job placement requests. See the pbs_node_attributes(7B) man page.

Do not mix old style resource or node specifications with the new select and place statements. Do not use one in a job script and the other on the command line. Mixing the two will result in an error. You cannot submit a job requesting a custom resource which has been created to be invisible or read-only for users, regardless of your privilege. A manager or operator can use the qalter command to change a job's request for this kind of custom resource. For more on resource requests, usage limits and job placement, see pbs_resources(7B). Setting attributes
The user sets job attributes by giving options to the qsub command and by using PBS directives. Each qsub option except -C, -q, and -z sets a job attribute, and has a corresponding PBS directive with the same syntax as the option. Attributes set via command-line options take precedence over those set using PBS directives. See the PBS Professional User's Guide, pbs_job_attributes(7B). The behavior of the qsub command may be affected by the server's default_qsub_arguments attribute. This attribute can set the default for any job attribute. The default_qsub_arguments server attribute is settable by the administrator, and is overridden by command-line arguments and script directives. See the pbs_server_attributes(1B) man page. The behavior of the qsub command may also be affected by any site hooks. Site hooks can modify the job's attributes, change its routing, etc.

OPTIONS

-a date_time
    Point in time after which the job is eligible for execution. Given in pairs of digits. Sets job's Execution_Time attribute to date_time. Format:

    [[[[CC]YY]MM]DD]hhmm[.SS]

    where CC is the century, YY is the year, MM is the month, DD is the day of the month, hh is the hour, mm is the minute, and SS is the seconds. Each portion of the date defaults to the current date, as long as the next-smaller portion is in the future. For example, if today is the 3rd of the month and the specified day DD is the 5th, the month MM is set to the current month. If a specified portion has already passed, the next-larger portion is set to one after the current date. For example, if the day DD is not specified, but the hour hh is specified to be 10:00 a.m. and the current time is 11:00 a.m., the day DD is set to tomorrow.

-A account_string
    Accounting string associated with the job. Used for labeling accounting data. Sets job's Account_Name attribute to account_string. Format: string.

-c checkpoint_spec
    Determines when the job will be checkpointed. Sets job's Checkpoint attribute. An $action script is required to checkpoint the job. See the pbs_mom(8B) man page.

    The argument checkpoint_spec can take on one of the following values:

    c   Checkpointing is to be performed according to the interval, measured in CPU time, set on the execution queue in which the job resides. If there is no interval set on the queue, the job is not checkpointed.

    c=<minutes of CPU time>
        Checkpointing is to be performed at intervals of the specified number of minutes of CPU time used by the job. This value must be greater than zero. If the interval specified is less that that set on the execution queue in which the job resides, the queue's interval is used.
        Format: integer.

    w   Checkpointing is to be performed according to the interval, measured in walltime, set on the execution queue in which the job resides. If there is no interval set on the queue, the job is not checkpointed.

    w=<minutes of walltime>
        Checkpointing is to be performed at intervals of the specified number of minutes of walltime used by the job. This value must be greater than zero. If the interval specified is less than that set on the execution queue in which the job resides, the queue's interval is used.
        Format: integer.

    n   No checkpointing is to be performed.

    s   Checkpointing is to be performed only when the server is shut down.

    u   Unset. Defaults to behavior when interval argument is set to s.

    Default: u.
    Format: String.

-C directive_prefix
    Defines the prefix identifying a PBS directive. Default prefix is "#PBS".

    If the directive_prefix argument is a null string, qsub does not scan the script file for directives. Overrides the PBS_DPREFIX environment variable and the default. Cannot be used as a PBS directive.

-e path
    Path to be used for the job's standard error stream. Sets job's Error_Path attribute to path. The path argument is of the form:
    [hostname:]path_name
    The path is interpreted as follows:

    path_name
        If path_name is a relative path, then it is taken to be relative to the current working directory of the qsub command, where it is executing on the current host. If path_name is an absolute path, then it is taken to be an absolute path on the current host where the qsub command is executing.

    hostname:path_name
        If path_name is a relative path, then it is taken to be relative to the user's home directory on the host named hostname. If path_name is an absolute path, then it is the absolute path on the host named hostname.

    If path_name does not include a filename, the default filename is
        jobid.ER
    If the -e option is not specified, PBS copies the standard error to the current working directory where the qsub command was executed. The default filename for the standard error stream is used. It has this form:
        job_name.e<sequence number>
    If you use a UNC path, the hostname is optional. If you use a non-UNC path, the hostname is required. This option is overridden by the -k option.

-f  Prevents qsub from spawning a background process. By default, qsub spawns a background process to manage communication with the PBS server. When this option is specified, the qsub process connects directly to the server and no background process is created. NOTE: Use of this option will degrade performance of the qsub command when calls are made in rapid succession.

-G [-- <GUI application>]
    Starts a GUI session. When no application or script is provided, starts a GUI-enabled interactive shell. When an application or script is provided, starts the GUI application or script. Use full path to application or script unless the path is part of the user's PATH environment variable on the execution host. When submission and execution hosts are different, uses a remote viewer.
    Session is terminated when remote viewer or GUI application is terminated, when interactive shell is terminated, or when job is deleted.
    Can only be used with interactive jobs (the -I option).
    Available only under Windows.

-h  Applies a user hold to the job. Sets the job's Hold_Types attribute to "u".

-I  Job is to be run interactively. Sets job's interactive attribute to TRUE. The job is queued and scheduled as any PBS batch job, but when executed, the standard input, output, and error streams of the job are connected to the terminal session in which qsub is running. If a job script is given, only its directives are processed. When the job begins execution, all input to the job is taken from the terminal session. See the PBS Professional User's Guide for additional information on interactive jobs. Interactive jobs are not rerunnable. Job arrays cannot be interactive. When used with -Wblock=true, no exit status is returned.

-j join
    Whether and how to join the job's standard error and standard output streams. Sets job's Join_Path attribute to join. Default: not merged. Possible values of join:

    oe  Standard error and standard output are merged into standard output.

    eo  Standard error and standard output are merged into standard error.

    n   Standard error and standard output are not merged.

-J range
    Declares that this job is an array job. Sets job's array attribute to TRUE. The argument range identifies the integers greater than or equal to zero that are associated with the subjobs of the array. range is specified in the form X-Y[:Z] where X is the first index, Y is the upper bound on the indices and Z is the stepping factor. For example, 2-7:2 will produce indices of 2, 4, and 6. If Z is not specified, it is taken to be 1.

-k keep
    "k" specifies whether and which of the standard output and standard error streams is retained on the execution host. direct_write can be enabled by passing "d" option (This will override "k" functionality). Overrides default path names for these streams. Sets the job's Keep_Files attribute to the keep
    Format: Any combination of 'd','o','e' or 'n'. 'n' cannot be used with other options.
    Default: n In the case where output and/or error is retained on the execution host in a job-specific staging and execution directory created by PBS, these files are deleted when PBS deletes the directory. The keep argument can take on the following values:

    d   direct_write option is used to output (stdout/stderr) files to the final destination, instead of being staged, if the final destination is known to be writable from the job execution node.

    e   "k/d" option is applicable to stderr file. The filename is
            job_name.e<sequence number>

    o   "k/d" option is applicable to stdout file. The filename is
            job_name.o<sequence number>

    n   "k/d" option is not applicable.

-l resource_list
    Allows the user to request resources and specify job placement. Sets job's Resource_list attribute to resource_list. Requesting a resource places a limit on its usage. Requesting resources in chunks:
        -l select=[N:]chunk[+[N:]chunk ...] where N specifies how many of that chunk, and a chunk is:
            resource_name=value[:resource_name=value ...]
    Requesting job-wide resources:
        -l resource_name=value[,resource_name=value ...]
    Specifying placement of jobs:
        -l place=modifier[:modifier]
    where modifier is any combination of group, excl, and/or one of free|pack|scatter. For more on resource requests, usage limits and job placement, see pbs_resources(7B).

-m mail_events
    The set of conditions under which mail about the job is sent. Sets job's Mail_Points attribute to mail_events. The mail_events argument can be either "n" or any combination of "a", "b", and "e".

    n   No mail will be sent.

    a   Mail is sent when the job is aborted by the batch system.

    b   Mail is sent when the job begins execution.

    e   Mail is sent when the job terminates.

    j   Mail is sent also for subjobs of an array job. Option "j" must be combined with "a", "b", or "e".

    Format: string.
    Default value: "a".

-M user_list
    List of users to whom mail about the job is sent. Sets job's Mail_Users attribute to user_list. Default: job owner.
    The user_list argument is of the form:
        user[@host][,user[@host],...]

-N name
    Sets job's name to name. Sets job's Job_Name attribute to name. Format: string, up to 236 characters in length. It must consist of an alphabetic or numeric character followed by printable, non-white-space characters.
    Default: if a script is used to submit the job, the job's name is the name of the script. If no script is used, the job's name is "STDIN".

-o path
    Path to be used for the job's standard output stream. Sets job's Output_Path attribute to path. The path argument is of the form:
    [hostname:]path_name
    The path is interpreted as follows:

    path_name
        If path_name is a relative path, then it is taken to be relative to the current working directory of the command, where it is executing on the current host. If path_name is an absolute path, then it is taken to be an absolute path on the current host where the command is executing.

    hostname:path_name
        If path_name is a relative path, then it is taken to be relative to the user's home directory on the host named hostname. If path_name is an absolute path, then it is the absolute path on the host named hostname.

    If path_name does not include a filename, the default filename is
        jobid.OU
    If the -o option is not specified, PBS copies the standard output to the current working directory where the qsub command was executed. The default filename for the standard output stream is used. It has this form:
        job_name.o<sequence number>
    If you use a UNC path, the hostname is optional. If you use a non-UNC path, the hostname is required. This option is overridden by the -k option.

-p priority
    Priority of the job. Format: host-dependent integer. Default: zero. Range: [-1024, +1023] inclusive. Sets job's Priority attribute to priority.

-P project
    Specifies a project for the job. Sets job's project attribute to specified value. Format: String.
    Project name can contain any characters except for the following: Slash ("/"), left bracket ("["), right bracket ("]"), double quote ("""), semicolon (";"), colon (":"), vertical bar ("|"), left angle bracket ("<"), right angle bracket (">"), plus ("+"), comma (","), question mark ("?"), and asterisk ("*").
    Default value: "_pbs_project_default".

-q destination
    Where the job is sent upon submission. Default: default queue at default server. Specifies a queue, a server, or a queue at a server. The destination argument can have one of these formats:

    queue
        Job is submitted to the named queue at the default server.

    @server
        Job is submitted to the default queue at the named server.

    queue@server
        Job is submitted to the named queue at the named server.

-r y|n
    Declares whether the job is rerunnable. Does not affect how the job is handled in the case where the job was unable to begin execution. Sets job's Rerunable attribute to the argument. See the qrerun(1B) command.
    Format: single character, "y" or "n".
    Default: "y".

    y   Job is rerunnable.

    n   Job is not rerunnable.

    Interactive jobs are not rerunnable. Job arrays are automatically marked as rerunnable.

-R remove
    Declares whether the job stdout/err files should get deleted if the job completes successfully. Sets job's Remove_Files attribute to remove
    Format: 'o' or 'e' or both of them.
    Default: "none". (option will be disabled)

    o   Job's stdout file will not be retained if job succeeds.

    e   Job's stderr file will not be retained if job succeeds.

-S path_list
    Specifies the interpreter or shell path for the job script. Sets job's Shell_Path_List attribute to path_list. Default: user's login shell on execution node. The path_list argument is the full path to the interpreter or shell including the executable name. Format:

        path[@host][,path@host ...]

    Only one path may be specified without a host name. Only one path may be specified per named host. The path selected is the one whose host name is that of the server on which the job resides. Example of using bash via a directive:

        #PBS -S /bin/bash@mars,/usr/bin/bash@jupiter

    Example of running a Python script from the command line on UNIX/Linux:

        qsub -S $PBS_EXEC/bin/pbs_python <script name>

    Example of running a Python script from the command line on Windows:

        qsub -S PBS_EXEC\bin\pbs_python.exe <script name>

-u user_list
    List of usernames. Job is run under a username from this list. Sets job's User_List attribute to user_list. Default: job owner (username on submit host.) Format of user_list:

        user[@host][,user@host ...]

    Only one username may be specified without a host name. Only one username may be specified per named host. The server on which the job resides will select first the username whose host name is the same as the server name. Failing that, the next selection will be the username with no specified hostname. The usernames on the server and execution hosts must be the same. The job owner must have authorization to run as the specified user.

-v variable_list
    Lists environment variables and shell functions to be exported to the job. This is the list of environment variables which is added to those already automatically exported. These variables exist in the user's login environment from which qsub is run. The job's Variable_List attribute is appended with the variables in user_list and their values. See ENVIRONMENT section of this man page. Format: comma-separated list of strings in the form:

        variable

    or

        variable=value

    If a variable=value pair contains any commas, the value must be enclosed in single or double quotes, and the variable=value pair must be enclosed in the kind of quotes not used to enclose the value. For example:
        qsub -v "var1='A,B,C,D'" job.sh
        qsub -v a=10, "var2='A,B'", c=20, HOME=/home/zzz job.sh
    Default: no environment variables are added to the job's variable list.

-V  Declares that all environment variables and shell functions in the user's login environment where qsub is run are to be exported to the job. The job's Variable_List attribute is appended with all of these environment variables and their values.

-W additional_attributes
    The -W option allows specification of any job attribute. Some job attributes must be specified using this option. Those attributes are listed below. Format:

        -W attribute_name=value[,attribute_name=value...]

    If white space occurs within the additional_attributes argument, or the equal sign "=" occurs within an attribute_value string, then that must be enclosed with single- or double-quotes. PBS supports the following attributes within the -W option: depend=dependency_list

        Defines dependencies between this and other jobs. Sets the job's depend attribute to dependency_list. The dependency_list has the form:
            type:arg_list[,type:arg_list ...]
        where except for the on type, the arg_list is one or more PBS job IDs in the form:
            jobid[:jobid ...]
        The type can be:

        after: arg_list
            This job may be scheduled for execution at any point after all jobs in arg_list have started execution.

        afterok: arg_list
            This job may be scheduled for execution only after all jobs in arg_list have terminated with no errors. See "Warning about exit status with csh" in EXIT STATUS.

        afternotok: arg_list
            This job may be scheduled for execution only after all jobs in arg_list have terminated with errors. See "Warning about exit status with csh" in EXIT STATUS.

        afterany: arg_list
            This job may be scheduled for execution after all jobs in arg_list have finished execution, with any exit status (with or without errors.) This job will not run if a job in the arg_list was deleted without ever having been run.

        before: arg_list
            Jobs in arg_list may begin execution once this job has begun execution.

        beforeok: arg_list
            Jobs in arg_list may begin execution once this job terminates without errors. See "Warning about exit status with csh" in EXIT STATUS.

        beforenotok: arg_list
            If this job terminates execution with errors, then jobs in arg_list may begin. See "Warning about exit status with csh" in EXIT STATUS.

        beforeany: arg_list
            Jobs in arg_list may begin execution once this job terminates execution, with or without errors.

        on: count
            This job may be scheduled for execution after count dependencies on other jobs have been satisfied. This type is used in conjunction with one of the before types listed. Count is an integer greater than 0.

        Job IDs in the arg_list of before types must have been submitted with a type of on. To use the before types, the user must have the authority to alter the jobs in arg_list. Otherwise, the dependency is rejected and the new job aborted. Error processing of the existence, state, or condition of the job on which the newly submitted job is a deferred service, i.e. the check is performed after the job is queued. If an error is detected, the new job will be deleted by the server. Mail will be sent to the job submitter stating the error. Dependency examples:
        qsub -W depend=afterok:123.host1.domain.com /tmp/script
        qsub -W depend=before:234.host1.com:235.host1.com /tmp/script
    group_list=g_list

        List of group names. Job is run under a group name from this list. Sets job's group_List attribute to g_list. Default: login group name of job owner. Format of g_list:

            group[@host][,group@host ...]

        Only one group name may be specified without a host name. Only one group name may be specified per named host. The server on which the job resides will select first the group name whose host name is the same as the server name. Failing that, the next selection will be the group name with no specified hostname. The group names on the server and execution hosts must be the same. Job submitter's primary group is automatically added to this list.

        Under Windows, the primary group is the first group found for the user by PBS when it queries the accounts database.
    pwd
    pwd=''
    pwd=""

        These forms prompt the user for a password. A space between W and pwd is optional. Spaces between the quotes are optional. Examples:
            qsub ... -Wpwd <return>
            qsub ... -W pwd='' <return>
            qsub ... -W pwd="  " <return>
        Available on Windows and supported Linux x86 and x86_64 platforms only.

    block=true

        Specifies that qsub waits for the job to terminate, then returns the job's exit value. Sets job's block attribute to TRUE. When used with X11 forwarding or interactive jobs, no exit value is returned. See EXIT VALUES section.

    run_count=<value>

        Sets the number of times the server thinks it has run the job. Sets the value of the job's run_count attribute. Job is held when the value of this attribute goes over 20.
        Format: integer greater than or equal to zero.

    sandbox=<value>

        Determines which directory PBS uses for the job's staging and execution. Sets job's sandbox attribute to value. If value is PRIVATE , PBS creates a job-specific directory for staging and execution. If value is HOME or is unset, PBS uses the user's home directory for staging and execution. Sets the job's sandbox attribute to the specified value.

    stagein=path_list
    stageout=path_list

        Specifies files or directories to be staged-in before execution or staged-out after execution is complete. Sets the job's stagein and stageout attributes to the specified path_lists. On completion of the job, all staged-in and staged-out files and directories are removed from the execution host(s). The path_list has the form:

            filespec[,filespec]

        where filespec is

            local_path@hostname:remote_path

        regardless of the direction of the copy. The name local_path is the name of the file or directory on the primary execution host. It can be relative to the staging and execution directory on the execution host, or it can be an absolute path. The "@" character separates local_path from remote_path. The name remote_path is the path on hostname. The name can be relative to the staging and execution directory on the primary execution host, or it can be an absolute path. If path_list has more than one filespec, i.e. it contains commas, it must be enclosed in double-quotes. If you use a UNC path, the hostname is optional. If you use a non-UNC path, the hostname is required.

    umask=NNNN

        The umask with which the job is started. Default value: 077. Can be used with one to four digits; typically two. Sets job's umask attribute to NNNN. Controls umask of job's standard output and standard error. Example: -W umask=33 allows group and world read on the job's output.

-X  Allows user to receive X output from interactive job. DISPLAY variable in submission environment must be set to desired display. Can be used with interactive jobs only: must be used with -I or -W interactive = true. Cannot be used with -v DISPLAY. When used with -Wblock=true, no exit status is returned. Can be used with -V option. Not available under Windows.

-z  Job identifier is not written to standard output.

--version
    The qsub command returns its PBS version information and exits. This option can only be used alone.

OPERANDS
The qsub command accepts as operands one of the following:
    <script>
        a script
    -
        a dash
    -- <executable> [arguments to executable]
        a single executable (preceded by two dashes) and its arguments
<script>

    Path to script. Can be absolute or relative to current directory where qsub is run.

-

    Any PBS directives and user tasks are read from the command line. Same as for no operands.

-- <executable> [arguments to executable]

    The executable, and any arguments to the executable, are given on the qsub command line. The executable is preceded by two dashes, "--".

If a script or executable is specified, the script or executable must be the last argument to qsub. The arguments to the executable follow the name of the executable.

STANDARD OUTPUT
Unless the -z option is set, the job identifier assigned to the job is written to standard output if the job is successfully created.

STANDARD ERROR
The qsub command writes a diagnostic message to standard error for each error occurrence.

ENVIRONMENT VARIABLES
The qsub command uses the following:

PBS_DEFAULT
    Name of default server.

PBS_DPREFIX
    Prefix string which identifies PBS directives.

Environment variables beginning with "PBS_O_" are created by qsub. PBS automatically exports the following environment variables to the job, and the job's Variable_List attribute is set to this list:

PBS_ENVIRONMENT
    Set to PBS_BATCH for a batch job. Set to PBS_INTERACTIVE for an interactive job. Created upon execution.

PBS_JOBDIR
    Pathname of job's staging and execution directory on the primary execution host.

PBS_JOBID
    Job identifier given by PBS when the job is submitted. Created upon execution.

PBS_JOBNAME
    Job name given by user. Created upon execution.

PBS_NODEFILE
    Name of file containing the list of nodes assigned to the job. Created upon execution.

PBS_O_HOME
    User's home directory. Value of HOME taken from user's submission environment.

PBS_O_HOST
    Name of submit host. Value taken from user's submission environment.

PBS_O_LANG
    Value of LANG taken from user's submission environment.

PBS_O_LOGNAME
    User's login name. Value of LOGNAME taken from user's submission environment.

PBS_O_MAIL
    Value of MAIL taken from user's submission environment.

PBS_O_PATH
    User's PATH. Value of PATH taken from user's submission environment.

PBS_O_QUEUE
    Name of the queue to which the job was submitted. Value taken from user's submission environment.

PBS_O_SHELL
    Value taken from user's submission environment.

PBS_O_SYSTEM
    Operating system, from uname -s, on submit host. Value taken from user's submission environment.

PBS_O_TZ
    Value taken from user's submission environment.

PBS_O_WORKDIR
    Absolute path to directory where qsub is run. Value taken from user's submission environment.

PBS_QUEUE
    Name of the queue from which the job is executed. Created upon execution.

TMPDIR
    Pathname of job's scratch directory.

EXIT STATUS
Zero upon successful processing of input. Exit value is greater than zero upon failure of qsub. For blocking jobs, qsub exits and returns the exit value of the job. If the job is deleted without being run, qsub returns an exit value of 3. Warning about exit status with csh:
If a job is run in csh and a .logout file exists in the home directory in which the job executes, the exit status of the job is that of the .logout script, not the job script. This may impact any inter-job dependencies.

SEE ALSO
The PBS Professional User's Guide, the PBS Professional Administrator's Guide,
pbs_job_attributes(7B), pbs_server_attributes(7B), pbs_resources(7B), qalter(1B), qhold(1B), qmove(1B), qmsg(1B), qrerun(1B), qrls(1B), qselect(1B), qstat(1B)