Home

Contact Us

Documentation

 

The Team

 

News

 

Bugs And Fixes

 

Feature Requests

 

Help Options

 

Donations

 

 

 

 

 

 

Commands

 

answer [{-host hostname|-virtual vmname}] pid replystring

 

answer will be a symlink to reply

 

ask [–timeout nnn] [-default answer] [-maxlen len] [-minlen len] [-edit regexpr] [-[no]echo] [-hint hint_text] [{-host hostname|-virtual vmname}] question_text

ask [{-host hostname|-virtual vmname}] –cancel pidnum [-error errnum] [-message msgtext]

 

Create a pending reply. The command prints the response received. If echo is enabled (default), the question_text is echoed to stderr. Timeout is the maximum amount of time in minutes that the ask command will wait for an answer. If the request times out, then the default answer will be returned. If no default is given, a null answer will be returned. Minlen and maxlen specify the minimum and maximum lengths a response can be, and edit specifies a regex that will be used to check the format of the answer. If the answer fails the check, the ask command is re-posted. –cancel cancels a pending reply and forces it to error out. errnum specifies the error status that will be returned by the ask command, and msgtext specifies the error message that will be returned to stderr. Default errnum is 1 and default text is “Request cancelled by system management.”

 

autoreply {name|-all}[%scope] -show

autoreply {name|-all}[%scope] -delete

autoreply name[%scope] [-file filename […]] [-keep] -response [keytext=]replystring[;…]

 

Sets up, deletes or displays an automatic reply as well as optionally setting the scope for which the automatic reply is defined. –file refers to the file that was used to stream a job via the launch command. Keytext= specifies that the automatic reply will be used only for a pending reply whose text matches the regex specified by keytext. Multiple automatic replies for a process can be specified by separating the responses with semicolons (no unquoted spaces in either the keytext or replystring). –keep specifies that the automatic reply will not be deleted after it is used (default is delete the automatic reply after it is exhausted). For the definition of scope, see the scope command

 

calendar {-create|-modify} calendarname calendarfile

calendar {-delete|-default|-show} calendarname

 

Calendar maintenance.

 

datecalc [-format format] [-calendar calendarname] [increment [ …]]

Where

 

increment::=[[+|-]nnn [interval]|nlsdate]

and nlsdate is a date in the given calendar’s default format

 

Displays a date calculation. Default interval is days. If no calendar is specified, current system calendar is assumed, and default date format is the current NLS format (must be quoted if the format includes blanks) if available, and mm/dd/yyyy@hh:mi otherwise.

 

duration –from dateexpr [-to dateexpr] [-units unitname] [-int|-real]

 

Determine the duration in temporal units specified by unitname between two date expressions. Default for –to is now, and default unit is whole days.

 

finfo filename,parmnum

 

Returns info about a file.

 

 

jcsallow {-permit|-forbid} permid [identifier [ …]] {–command “cmdimage”[ …]|-role rolename [ …]

jcsallow –show [-perm permid] [identifier […]]

jcsallow –rename permid newpermid

jcsallow –delete permid

 

Where

identifier::= {{-host|-virtual}=hostname|-region=regionname| -jobname=jobname|-user=userid|-login=[jobname,]user.group| -group=groupname| -role=rolename|  -jobnum=jobnum| -file=filename|-directory=dirname}

 

Sets execution permissions for various commands. All commands are permitted to system management and cannot be forbidden to system management. By default, job -launch commands are permitted to everyone, but only for jobs that login to the same user, group and host as the user launching the job, and job -show is permitted to everyone. Also by default, ask commands are permitted for everyone, and reply is permitted when the requestor’s user, group and host match the user attempting the reply. Permissions are applied by permid. Permid can cotain alphanumeric characters plus “,”, “.”, “/”, “+”, “-“, “_”, “=”, “@”, “#”,  and “:”.

 

By default, the following commands are permitted to everyone:

 

datecalc

finfo

variable (for variables in the user’s scope)

job –show

job –launch (if the job logs on as the user’s userid and group on the user’s login host)

jobinfo

jobnum –show

jobnuminfo

jobnums

jobq –show

jobqinfo

preprocess

recall

replyinfo

resinfo

resuser

schedule

showsched

 

And by default, the following commands are reserved for system management only:

 

autoreply

calendar

jcsallow

job (except job-launch and job-show)

jobnum (except jobnum –show)

jobperms

jobq (except jobq –show)

region

resource

rule

stdlist

virtual

 

Roles are defined in the jcs.config file. The roles manager, supervisor, operator and monitor are pre-defined. All except manager can have their capabilities modified in the jcs.config file.

 

jcsconfig {-load|-save} [-file filename]

jcsconfig {-show}

 

Loads, saves or displays the current running configuration. This command can be issued by System Management only.

 

jcsmaster {-elect|-show|hostname} [-service serviceid]

 

Service master control. The –show option shows the list of current service masters. The option –elect forces an election among the eligible candidates for master for the service. If a hostname is provided, then that host is assigned as the master for the service.

 

 

job selector [ …] mods

job selector [ …] –read

job selector [ …] –runbook filename [-show|-delete]

job [selector [ …]] -show [showformat]

job [selector [ …]] -stats [stats_selectors] [stats_format]}

job -launch [-f filename][ ...] [schedule_modifier[ ...]][job_modifier[ …]]

 

Where:

 

            selector::= -select {{host|virtual}=hostname|-region=regionname| jobname=jobname|user=userid|login=[jobname,]user.group| group=groupname| jobnum=jobnum|state={EXEC|OK|SUSP|HOLD[:holdtype[,…]] |WARN|ERR|FAIL|EVAL|RUNBOOK}|file=filename|directory=dirname}

 

            mods::= {-cancel|-continue|-restart [label|linenum|prev|next|first]|-flush|-abort|-inpri nnn|-suspend|-resume|-hold desc|-release releasespec| {schedule_modifier|job_modifier[ …]}}

 

releasespec::=[now|hold=holdtype]

 

holdtype::= {hold_desc|schedule_modifier|job_modifier}

 

showformat::= –format {[0-9]|short|long|deps|fieldname[:width[,…]} [-sort fieldname[,…]] [-[no]head]

 

stats_selectors::= -stats [-start startdate] [-stop stopdate]

 

stats_format::=–format {[0-9]|short|long|fieldname[:width[,…]} [-sort fieldname[,…]] [-rollup fieldname[,…]]

 

Manages an individual job or group of jobs. Selection criteria can be mixed and repeated as desired. Selection criteria of the same type are logically OR-ed together, and the results logically AND-ed together with selection criteria of differing types (Example: -select user=root –select state=EXEC –select user=ckemp –select state=SUSP means find all jobs running as root or ckemp whose current state is EXEC or SUSP). If jobnum matches a job number family, the action is taken for the entire family, otherwise jobnum is assumed to be a single job number or JSID. –cancel cancels a pending job. To cancel an executing or suspended job, use –abort. –continue restarts a job that stopped because of an error. Execution of this job continues from the next job step. –restart restarts a stopped job at some other point in the jobstream. –flush deletes a stopped job. –inpri changes the job’s input priority. If the job’s input priority is less than or equal to the job fence for the job’s queue, the job will not be introduced. –suspend places an executing job in a sleep state, and –resume resumes a suspended job. –hold causes the job to be prevented from executing, and desc will show up under dependencies on a –show for the job. –release releases a hold on a job, and –release now removes all dependencies. –show shows currently executing jobs. If a custom –format is used, the fields must match the fieldnames in the jobinfo intrinsic below (use field names, not numbers).–read prints the contents of the job, and indicates the current execution step of the job. –stats gives wall time and CPU usage. Job -launches a job. If no filename is specified, the command takes the job to be launched from STDIN. If multiple filenames are specified, they are launched as a serial queue. All dependencies are attached to the first job in the queue. Job modifiers are applied to all jobs in the queue. Default priority for a launched job is 20.

 

jobinfo {jobnum|jobname} parmnum

 

Returns info about a scheduled job. See the library routine jobinfo for the list of parameters and information returned by this command.

 

jobnum [jobfamily[%scope] [-spec jobspec] [-select selectrule] [-start nnn -stop nnn] [-restart|-delete] [schedule_modifier|job_modifier[ …]]]

jobnum [jobfamily[%scope]] -show

 

Creates a smart job number family. spec must not contain white space, and each element of the spec must be alphanumeric or one of: “@”, “#”, “-“, “_”, “+”, “:”, “,”, “.”, “/”, a date format element (see date command) or “{}” to indicate the JSID. If the specification does not include “{}”, the JSID will be appended to the specification. Example of a job spec: #J{}-ACCT. jobnum by itself shows all current job number families. Default spec is jobfamily-{}. Select specifies that a launched job will be placed in this job number family if its launch does not already specify one and if the job fits selectrule. The values supplied for start and stop must be positive integers such that start<stop. Also, if a start/stop is provided for a queue, it must not overlap the start/stop for any other job number family. Once a job number range is exhausted, it will restart from the beginning. A –restart will force job numbering to restart from the beginning. If a start/stop combination is not supplied, JSIDs will be assigned from all JSIDs not assigned to a job number family. The unassigned job numbers can be restarted by doing a -restart on reserved job number family DEFAULT. The spec for DEFAULT is #J{}. Job number families are always local to a host machine. For the definition of scope, refer to the scope command.

 

jobnuminfo jobfamily,info

 

Returns information about a job family. See the library routine jobnuminfo for the parameters passed to and information returned by this command.

 

jobnums spec

 

Returns job numbers of all jobs fitting spec.

 

jobperms [selector [ …]] –set [-temp|-perm] permid ident perm […]

jobperms [selector [ …]] {-add|-remove} permid [ident] perm […]

jobperms {-show [permid]| |-delete permid}

 

Where:

 

            selector::= -select {{host|virtual}=hostname|-region=regionname| jobname=jobname|user=userid|login=[jobname,]user.group| group=groupname| jobnum=jobnum| file=filename|directory=dirname}

 

ident::=[role,]{user|~|*}[.{group|~|*}][@{host|~|*}[:{host|virtual|region}]

 

            perm::={-permit|-forbid|-force|-delete} {schedule_modifier|job_modifier|runas userid[.group]|password| nopass|admin}

 

Sets job permissions. Selectors (if provided) limit the target range across which the permission is enforced. For example, -select region=accounting –select directory=/opt/acct/jobs will affect jobs launched from the directory /opt/acct/jobs on all machines in the accounting region. Selectors that reference a login, user or group refer to the login of the job being administered. If no selectors are provided, then the permission takes effect across the entire domain.  An identifier refers to the person attempting to launch or administer the job. “~” in an identifier means that part of the user’s login must match the corresponding part of the job being launched for the permission rule to be applied (Example: ~.~@~ indicates that the permission will be applied only if the user’s userid, group and login host match that of the job the user is trying to administer). Default is a job can only be administered by system management and by the user and group that launched it. System management cannot be forbidden administrative control over a job. Permissions are applied to a job in order of their permid. Only system management and executing runbooks can use the jobperms command.

 

jobq -create [queuespec[ …]] queuename

jobq -alter [-add|-remove|-set] queuespec[ …] queuename

jobq {-delete|-open|-close} queuename

jobq -show [formatspec] [queuename[ …]]

 

Where

            queuespec::= [-select selectrule] [-maxload {nnn|jcsvar}] [-limit {nnn|jcsvar}[per {source|target} {user|group|jobname|class|login|host|virtual|region}]] [–fence {nnn|jcsvar}] [–pri {min|jcsvar},{max|jcsvar}] [-cutoff cutoffrule] [–parent queuename] [-slice {msecs|jcsvar},{msecs|jcsvar}] [-nice {nice|jcsvar}] [-incr prichg[%]] [schedule_modifier[ ...]] [job_modifier[ …]]

 

            queuename::=name[%scope]

 

            formatspec::= [-v|-[0-9]|-format fieldname[:nnn][,…]]

 

Manage a jobqueue. Main queue is MASTER. It defines the maximum total size of all user queues combined. Default queue is DEFAULT. SYSTEM queue is reserved for system administration, and exists outside MASTER. Closing a queue does not affect any running jobs, but simply forbids admission of any more jobs to the queue, regardless of priority. If a cutoff rule is specified, that rule is executed and the queue is shut if the status returned from the rule is greater than zero. Select specifies that a launched job will be placed in this queue if its launch does not already specify a queue and if the job fits selectrule. Maxload specifies a system load level at which the queue will be shut down automatically. Limit specifies the maximum number of active (EXECUTING and SUSPENDED) jobs that may occupy the queue at any point in time. Fence specifies the minimum introduction priority a waiting job must have before being considered for admission to the queue (default is 10). Pri specifies the minimum and maximum process priority for the queue. Parent specifies the queue which is immediately above this queue. Note that all active jobs in a queue count toward the parent queue limit. Slice specifies the minimum and maximum number of CPU milliseconds per second that all jobs combined in the queue may use. Note, however, that in no case will a process’ priority be placed outside the process priority limits for the queue. Nice specifies a nice value that will automatically be applied to every job in the queue. Incr specifies the increment by which a process’ priority will be changed (up or down as needed) when it goes outside the usage limits specified for the queue. jobq by itself displays all jobqueues. Note that a jobqueue name must be unique across all machines that serve it. That is, if a jobqueue is set up for a virtual host, none of the target hosts can have an existing queue with that name, and if a jobqueue is set up on a local system, none of the virtual hosts for which it is a target may have a jobqueue of the same name. For the format of a scope specification, see the scope command.

 

jobqinfo queuename,parmnum

 

Returns info about a jobqueue. See the library routine jobqinfo for the parameters passed to and information returned by this command.

 

pause schedule_modifier[ …]

 

Waits until the schedule modifiers specified are all true. If the command exits without all the dependencies being filled (for example, hitting a specified –deadline, or specifying an –if condition that is not true), the command exits with a nonzero status. If all dependencies are met, then the command exits with a zero status. This command allows the user to create a more fine-grained control of portions of a job as it executes.

 

preprocess [-as userid.groupid] [-[no]nest] [-processor processor] [file …]

 

Runs input through a preprocessor.

 

recall [-host {hostname|all}|-virtual {vmname[%scope]|all}|-region {regionname|all}]

 

List pending replies posed via ask. Recall items are listed in the following format:

 

rpid/hh:mi/host:{H|V|R}/userid.group/jobnum/question_text?[(hint)]

 

If no filters are specified, then only pending replies for the current host are shown. For format of the scope portion of the command, see the scope command.

 

recap [-q|-n] [scope]

 

Displays the current schedule and/or performs a system status check. If –q is specified, only the status check will be performed. If –n is specified, the schedule is displayed without performing a status check. Default is perform both status check and schedule display. If a scope is displayed, only the events fitting that scope are displayed. To see the format of the scope specification, see the scope command.

 

region regionname [[-add|-set|-remove][ file[ …]]|-delete]

 

Creates a region of related systems. The lines of the region file have the format:

 

{{include|exclude} {system|virtual|region|network|dnsname}=spec[,…]|#comment}

 

If no region files are specified, then the elements for the region are taken from stdin.

 

reply [{-host hostname|-virtual vmname[%scope]}] rpid reply

 

Answer pending reply posed via ask. For the format of the scope portion of the command, refer to the scope command.

 

replyinfo replyspec,parmnum

 

Returns info about a pending reply. See the library routine replyinfo to see the parameters passed to and information returned by this command.

 

resinfo resource,parmnum

 

Returns info about a resource. See the library routine resinfo to see the parameters passed to and information returned by this command.

 

 

resource -pending [-ppid ppid] [-pid pid] [{-host hostname|-virtual vmname[%scope]}] {-deny |-return|-modify {-timeout nnn|-pri priority|-resource [+|-]resourcespec,…}}

resource –get [-nowait|[-timeout nnn|-pri priority][ …]] resource[:count|all] [...]

resource –return {-all|-last|resourcespec […]}

resource {-add|-delete|-modify|-freeze|-unfreeze} [properties] resource

resource –access resource [-owner [+|-][r][x][w]] [-member [+|-][r][x][w]] [-other [+|-][r][x][w]] [-scope scope [+|-][r][x][w]]

resource –show [-pending] [{-host hostname|-virtual vmname}]  [scope] –sort sortspec  [resource[ …]]

 

Where

           

            properties::= [–d description] {–limit {max|jcsvar}|–rule command} [–min {priority|jcsvar}] [–max {priority|jcsvar}]  [-contains resourcespec [,…] [-parent resource] [{-host hostname|-virtual vmname}]  [-alloc sortspec[,…]]

 

            resourcespec::=resource:{num|all}

 

            resource::=resourcename[%scope]

 

sortspec::={AGE|PRIORITY|COUNT|REQUESTS|AVAIL|sortrule}[:ASC|:DESC]

 

Resource control. Resource -pending works on pending resource requests. Resource –get requests a resource. The -nowait form of the command gets a resource immediately. If the request is successful, the command returns a 0. If not, it returns an error code. A resource –get without –nowait will wait for the resource(s) specified before it returns a status. If it is not successful within the time allowed, or if the request is denied, an error code is returned. Resource -return –all returns all resources requested by this process. Resource -return –last returns all resources requested by the last need. A process exiting returns all resources it requested. By default, a process can only get resources for groupings of which that process is a member. The –access form of the command defines what access is granted to the resource. An access of “r” means the scope specified can do a show on the resource. An access of “x” means –gets and –returns are permitted. An access of “w” provides the capability of administering the resource (add, delete, modify, grant, refuse). The –add/-delete/-modify form of the command manages the resources themselves. If max<=zero or not specified, resource has no specific limit. In this case, a rule MUST be provided. Exit 0 from rule means request granted, anything else denied. For example, using system load as a resource would allow a user to specify that a job can be run only when system load is below 3. If no count is specified, or if the count is set to <=0, then rule is executed to see whether to allocate the resource or not. If count >0, then rule is executed only when more than one process is waiting for a resource, and rule determines which process is allocated first. The names of all resources available on any given host must be unique, and a resource name can only contain alphanumeric characters plus “.” and “_”. If a parent resource is specified, every time this resource is incremented or decremented, the corresponding parent resource is treated likewise. For the format of the scope portion of the command, refer to the scope command.

 

resuser resource pid parmnum

 

Returns info about a user of a resource. See the library routine resuser for the parameters passed to and information returned by this command.

 

rule rulename[%scope][(parm[=defaultvalue][,…]) –file filename

rule rulename[%scope][(parm[=defaultvalue][,…])[=]

do

.

.

.

[return value]

.

.

.

done

 

rule -show [{rulename|pattern}[%scope]]

rule -delete rulename[%scope]

rule –access rulename[%scope] [-owner [+|-][r][w][x]] [-member [+|-][r][w][x]] [-other [+|-][r][w][x] [-scope scope [+|-][r][w][x]]

 

Where

 

Defines a rule for use in resource and job control commands. For the format of the scope portion of the command, refer to the scope command.

 

schedule          [-name jobname] [-user userid] [-group groupname] [-jobnum jobnum]

[schedule_modifier][ ...]

[job_modifier][ ...] –cmd cmdimage

schedule          [-name jobname] [-user userid] [-group groupname] [-jobnum jobnum]

[schedule_modifier][ ...]

[job_modifier][ ...] -delete

schedule          [-name jobname] [-user userid] [-group groupname] [-jobnum jobnum]

[schedule_modifier][ ...]

[job_modifier][ ...] -edit

schedule          [-name jobname] [-user userid] [-group groupname] [-jobnum jobnum]

[schedule_modifier][ ...]

[job_modifier][ ...] -modify

schedule          [-name jobname] [-user userid] [-group groupname] [-jobnum jobnum]

[schedule_modifier][ ...]

[job_modifier][ ...]

do

.

.

.

done

 

Schedules an event.

 

scope [object_type:namepattern] [–for scope] {[-to] scope|-delete|-show}

 

 

Where

 

            object_type::={all|variable|resource|virtual|job|jobnumber|jobqueue|autoreply}

 

scope::={localityscope|userscope|jobscope|subclass}

 

localityscope::={local|region:regionname|host:hostname|virtual:vmname|global} [/userscope|/jobscope|/subclass]

 

userscope::={user[:userid]|group[:groupid]|role:rolename}[/jobscope|/subclass]

 

jobscope::={temp|ptree[:pid]|job[:jobname]|jobnum[:jobnum]| jobq[:jobqueuename]}[/subclass]

 

subclass::=class:classname

 

Sets the default scope for a scheduling object.

 

showsched [{-host hostname|-virtual vmname}] [-from fromdate] [-to todate] [-calendar calendarname]

 

Prints a schedule.

 

stdlist [hostname:]jobname

 

Prints a job’s stdlist (stderr + stdout).

 

variable [–indirect] jcsvar[%scope][=value]

variable -show [{jcsvar|pattern}[%scope]]

variable -delete jcsvar[%scope]

variable –lock [-conditional|-unconditional] jcsvar[%scope]

variable -unlock {-all|jcsvar[%scope]}

variable –access jcsvar[%scope] [-owner [+|-][r][w][x]] [-member [+|-][r][w][x]] [-other [+|-][r][w][x] [-scope scope [+|-][r][w][x]]

 

Where

 

jcsvar::=variablename[“[“index[,…]”]”] 

Example: CPUtime[“myhost”,jobnumber]

 

Sets, shows or deletes a JCS variable. Default is local variable for the current process tree. The advantage of JCS variables is that they can be shared between processes, jobs or even multiple systems. JCS variable names can contain alphanumeric characters, as well as  “_”, “-“ and “.” A JCS variable name must start with either an alpha character or “_”.  The first form (variablename=value) sets a value for a JCS variable, and creates the variable if it does not already exist. –show displays ALL JCS variables matching the criteria specified. The variables are displayed in a variable=value format, one per line. –delete deletes a JCS variable. If no assignment is made in a variable command, and neither –show, -delete, -lock, -unlock or –access are specified, the command returns a single value for the variable specified. For the format of the scope portion of the command, please refer to the scope command.

 

virtual –show [vmname[%scope]]

virtual –delete vmname[%scope]

virtual –modify vmname[%scope] {-param {method|minfree|state|failover|overload|limit}= ”valuestring”|-member  name=”memvals”}[ …]]

virtual –edit [vmname[%scope]]

virtual vmname[%scope]

begin

[method [weighted] [balance_method]

[minfree {nnn|jcsvar}]

[state {enabled|disabled|halted|failed}]

[failover vmname]

[overload vmname]

[limit [per {user|group|jobname|file}] {nnn|jcsvar|rule}]

[maxqueue {nnn|jcsvar|rule}]

[options {job_modifier|schedule_modifier}[ …]

[runbook runbookfile]

 

{member_spec […]|region_spec}

 

end

 

Where

member_spec::= member [virtual] name [weight [rule] weight] [priority [rule] priority] [limit {nnn|jcsvar|limit}] [state {enabled|disabled|halted|failed}] [runbook runbookfile] [resource resourcespec] [availability rule] [options “{schedule_modifier|job_modifier}[ …]}”

 

region_spec::= region regionname [weight [rule] weight] [priority [rule] priority] [runbook runbookfile] [resource resourcespec] [availability rule] [options “{schedule_modifier|job_modifier}[ …]}”

 

 

balance_method::= { roundrobin|load|cpu|network|jobs|jobresp|resource resourcespec|rule}

           

            resourcespec::=resource:{num|jcsvar|all}[ …]

 

            resource::=resourcename[%scope]

 

Sets up a load balancing virtual host. Only system management can set up a virtual host. Weighted means that the load balancing method will take into consideration the weight assigned to the target hosts in its calculation of the next host to be used. For example, on a virtual host using a load balancing method of weighted load, if host_a has a current load of 3 and a weight of 10, and host_b has a load of  5 and a weight of 50, then the next load of work will be assigned to host_b because host_b’s load would have to be 5 times that of host_a before host_a would be assigned work. Weighted load balancing cannot be used with the resource load balancing method. You can specify resource at the virtual server level or at the member level, but not both.  Membership in a virtual host can be specified by member host or region, but not both. If a virtual host is set up by region, only one region can be specified for the virtual host. You can, however, create a virtual host made up of other virtual hosts, each containing a different region. If priorities are used, each member of the highest priority must be within minfree jobs of its limit before any member in the next lower priority group can be used. If an availability rule is specified, that rule is executed to see if the member host is available for job assignment. For the format of the scope portion of the command, refer to the scope command. Note: the scope for a virtual host cannot be limited to a single host.

 

Virtual Host States. A virtual host state of enabled means that at least one target host available to process jobs. A state of disabled means that existing jobs will be processed, but no new jobs are being accepted. Blocked means that no target machines are available to process jobs. Halted means that the virtual host has been aborted, and the state of jobs on the target machines cannot be ascertained. Aborted means all jobs on target machines for this virtual host have been aborted, and the virtual host Halted. Failed means the virtual host has been failed over to its failover virtual host.

 

Member Host States. A member host state of enabled means that the host is available to process jobs. A state of disabled means that existing jobs will be processed, but no new jobs are being accepted. Blocked means that the host has reached its job capacity. Halted means that the host state and the state of its jobs cannot ascertained. Aborted means all jobs on target machines for this host have been aborted, and the host disabled from accepting new jobs.

 

vsh [user@]vhostname[%scope] [-l user] [-e mech] [cmdimage]

 

Executes the command on the virtual host indicated. Supported values for mech are rsh and ssh. For the format of the scope portion of the command, refer to the scope command.

 

Schedule Modifiers

 

schedule_modifier for the above commands is of the form:

 

[-after jobname[,...]]

[-ask “question_text”][ ...]]

[-at timespec[.calendar]]

[-between timespec[.calendar], timespec[.calendar]]

[-deadline interval]

[-every interval

[-from interval]

[-to interval]

[-restart interval]]

[-except condition]

[-file [!][host:]filename[.state]][ ...]

[-hold “hold text”]

[-if condition]

[-in interval]

[-job jobname[.jobstate]]

 [-on calendarelement[.calendar][=value][,…]]

[-parm pname[%scope]{=|>|<|<>|>=|<=}{“value”|nnn|pname[%scope}[ ...]

[-resource resourcespec[,...]]

[-sameday {on|off}]

[-unless condition]

[-until condition]

[-when condition]

[-whenever condition]

[-with jobname[:nnn][,…]]

[-without jobname[:nnn][,…]]

 

Where

           

state::={[{user|group|world}.]{ readable|writable|executable}| exist|setuid|setgid|created {+|-}nnn|modified {+|-}nnn|accessed {+-}nnn}

 

resourcespec::=resource[:{num|jcsvar|all}]

 

resource::=resourcename[%scope]

 

and interval is of the form:

{date|[+/-]count[.duration[.calendar]]}[{+|-}...]

default duration is days, and default calendar is master.

 

date::=date_spec[.calendar]

The format of date_spec is dependent upon the NLS calendar format specification for the calendar invoked (default is mm/dd/yyyy[@hh:mi[:ss]]])

 

For the format of scope in the above, refer to the scope command.

 

-after                Specifies one or more jobs that must finish before this one can be introduced. b)

 

-ask                 Specifies a pending reply that must be answered before the job can be released. b)

 

-at                    Specifies a release time for a job. b)

 

-between          Specifies a calendar window during which a job may be introduced. b)

 

-deadline          Specifies a deadline for introducing a job. b)

 

-every              Repeats a job at regular interval. If –from is specified, the –from interval specifies the initial release interval for the job. If –to is specified, the –to interval specifies the final release interval for the job. If –restart is specified, the cycle is re-initialized after the –restart interval passes.

 

-except             Overrides release of a job if a condition is true.

 

-file                  Specifies that a job is to be released when a given file reaches the specified state. b)

 

-hold                Places a manual hold on a job that must be cleared by system management before the job will be permitted to execute. The text specified will be shown as the reason the job is being held up. b)

 

-if                     Will release the job for execution only if the condition is true when the job is ready to be released. If the condition specified is not true, the job is pre-empted and flushed. b)

 

-in                    Releases a job after a given interval has passed. b)

 

-job                  Specifies that a job is to be released when another job reaches a given state. If the job never reaches this state, the job to be released will be flushed. b)

 

-on                   Specifies a calendar pattern that must be met in order to release the job. b)

 

-parm               Specifies that a job is to be released based on the value of one or more JCS parameters. b)

 

-resource          Specify resources that the job must have available before it can be introduced. The resources are not tied to physical resources, but can be thought of as chips allocated to a job from an available pool. b)

 

-sameday         Determines whether to release a job now or defer until the next occurrence of a time/date pattern (default is defer). a), b)

 

-unless              Will release the job for execution only if the condition is false when the job is ready to be released. If the condition specified is true, the job is pre-empted and flushed.

 

-until                 Ends a cycle for a job when a condition is true. b)

 

-when               Specifies a logical condition that must be met before a job can be released. b)

 

-whenever        Releases a job every time a condition is met. b)

 

-with                Specifies jobs that must be running when the job is introduced. If a count of nnn is specified, at least nnn copies of the job must be running. b)

 

-without            Specifies jobs that must not be running when the job is introduced. If a count of nnn is specified, no more than nnn-1 copies of the job can be running. b)

Job Modifiers

 

 

job_modifier for the above commands is of the form:

[-cpu cpulimit]

[-del]

[-dir dirname]

[-err cmd]

[-fail cmd]

[-finish cmd]

[-autoflush|-noflush]

[-host  host[(condition)][,…]]

[-hostrule cmd]

[-init cmd]

[-inpri nnn]

[-jobnum jobfamily]

[-jobq queuename]

[-jobqrule cmd]

[-login [jobname,]user[.group]]

[-maxwait mins]

[-minload host[:weight],host[:weight][,…]]

[-need [host:]filename[,{keep|scrap}}

[-nice nicevalue]

[-preprocessor {cmd|/OFF/}]

[-{pri|batchq}   {nnn}              ]

                        {batchq}

[-setjcs varname=value

[-shell progname]

[-stderr cmd]

[-stdout cmd]

[-time timelimit]

[-type   {critical}           ]

            {semi}

            {normal}

            {custom rule}

[-uses [hostname:]file[,[r][w][x]]

                                                [-validate {stdlist|stderr} cmd]

                                                [-virtual vmname [-token name [-expires expiration]]]

                                                [-warn cmd]

 

 

-cpu                 specifies cpu time limit in seconds for job. Sets job state to ERROR and aborts when time expires.

 

-del                  Delete stderr/stdout after successful completion. b)

 

-dir                   Sets the starting directory for the job. Default is user’s login directory. b)

 

-err                  Execute command if job ends in ERROR state.

 

-fail                  Execute command if job ends in FAIL state.

 

-finish               Execute when job ends (prior to checking final state).

 

-host                Submits the job on the first available host whose associated condition (if specified) is true. If no conditions are specified on any hosts, it is submitted on the host with the lowest load over the last 5 minutes. a), b)

 

-hostrule           Submits the job to the host returned as output from cmd. a), b)

 

-init                  executes the command upon successful initiation of the job. b)

 

-inpri                Specifies the job’s priority in the job queue (higher number is higher priority, must be above fence for queue to be introduced). b)

 

-jobnum           Specifies the smart job number sequence that will be used to generate this job’s job number. a), b)

 

-jobq                The name of the job queue that will hold this job. (Auto suspend if switching an active job and destination queue is full).

 

-jobqrule          The name of the job queue that will hold this job. The name of the job queue will be returned by the output of cmd.

 

-login                The name of the job, user and group that the job will run under. If the user is neither specifically allowed nor forbidden from running the job under that login, the user must provide the password for the login.

 

-maxwait          The maximum number of minutes a job can wait before being canceled.

 

-minload           submits the job on the available host whose load for the last 5 minutes was lowest. If a weight factor is added, the load on that host is divided by that weight factor. a), b)

 

-nice                 Sets a nice value for the job.

 

-preprocessor   A command used to process the contents of the job file before it is actually launched. Using /OFF/ as the preprocessor turns off all preprocessing a), b)

 

-pri                   Sets the job’s execution priority. Can be numeric, or the name of a scheduling queue.

 

-shell                Sets the startup shell for the job. Default is default shell for the job’s login user. b)

 

-stderr              Pipes stderr to command. Must be terminated by an escaped semicolon b)

 

-stdout             Pipes stdout to command. Must be terminated by an escaped semicolon. b)

 

-time                specifies wall time limit in seconds for job. Sets job state to ERROR and aborts when time expires.

 

-type                tells whether job is critical, semi-critical or non-critical. If specified as type custom, then rule will be executed upon abort or EOJ, and the return value of rule will be used as the job’s type. b)

 

-uses                Specifies that the job must have local access to the file specified. If the file is required for writing, it is transferred back after the job finishes.

 

-validate           Specifies a command to be used to validate the job for successful completion.

 

-virtual              Specifies the virtual host that will be used to load balance the request. If a token is specified, that token is used to specify a job persistence target for future jobs that must exit on the same target machine as this job. For example, suppose job A is assigned to virtual host VIRTUAL1 made up of hosts X, Y and Z. Job A has a token of MYTOKEN attached to it. If job A is assigned to host Y for execution, and at some point later job B is assigned to virtual host VIRTUAL1, if it also has the token MYTOKEN attached to it, it will also be assigned to host Y for execution, as will any job with the token MYTOKEN attached to it, until the token MYTOKEN expires. Tokens only expire when a job with a token specifies an expiration for its token, and the expiration becomes true. Each succeeding job that has an expiration for a token will overwrite the current expiration for the token with its own expiration.

 

-warn               Execute command if job ends in WARN state.

 

Notes:

a)      Cannot be changed once job is launched

b)      Cannot be changed once job is introduced

c)      May be repeated.