man dntask (Commandes) - Execute VMS command procedures
NAME
dntask - Execute VMS command procedures
SYNOPSIS
dntask
[options] command-procedure
Options:
[-biVh] [-t timeout]
DESCRIPTION
dntask runs command procedures on a remote VMS system.
It takes advantage of the ability of the TASK object in DECnet to
execute an arbitrary command procedure located in
the users' login directory. The remote command procedure should output
to SYS$NET rather than SYS$OUTPUT and (if interactive) read it's input
also from SYS$NET.
The VMS equivalent of the (non-interactive version) command would be
TYPE node::"TASK=command-procedure"
For some example command procedures see the tasks directory of the source
distribution.
show_system.com
is a non-interactive task that simply displays
the output of the VMS "SHOW SYSTEM" command on standard output.
interactive.com
is an interactive task that allows you to enter DCL commands to be executed
on the host VMS system. Be careful which commands you enter because they will
expect input to come from the network connection, for instance programs that do
screen orientated input or output will almost certainly not work.
Task names can be up to 16 characters in length because that's the limit on
DECnet object names.
OPTIONS
- -b
- Send the output in binary mode. By default the output from the DECnet task is assumed to be records. This option sends the data "as is" so you can put commands like BACKUP in the task and backup to your Linux box.
- -i
- Interact with the command procedure. The command procedure must be written to be interactive by reading from and writing to SYS$NET. Specifying -i for a non-interactive command procedure will cause dntask to time-out waiting for input. Not specifying -i for an interactive command procedure will cause it to exit prematurely at the VMS end.
- -t timeout
- Specifies the timeout in seconds for interactive command procedures. If no input has been received from either standard input or the VMS end in this time then dntask will exit. The default is 60 seconds. If the value 0 is given then dntask will wait forever (or until you kill it).
- -h -?
- Displays help for using the command.
- -V
- Show the version of the tools package that dntask comes from.
NOTES
The command procedure tht you write MUST ALWAYS write something to SYS$NET
or you will get a "connection refused" message. This is a limitation
with DECnet objects.
eg. If you write a task to start a remote DECterm it would look something like
this:
$ remnode=f$element(0, ":", "''f$trnlnm("sys$rem_node")'")
$ set display/create/node='remnode'
$ create/term/detach
$ def/nolog sys$output sys$net
$ write sys$output "DECterm started on ''remnode'"
$ exit
The "write" command near the end is essential.
EXAMPLES
dntask 'myvax::show_system'
dndir -i 'tramp"patrick pjc123"::interactive'
dndir -i 'tramp"patrick -"::interactive'
Specifying "-" in the password field will prompt for the password.