Task to automate a remote rexec session. Just like the Telnet
task, it uses
nested <read>
to indicate strings to wait for, and
<write>
tags to specify text to send to the remote
process.
Note: This task depends on external libraries not included in the Apache Ant distribution. See Library Dependencies for more information.
You can specify the commands you want to execute as nested elements or via the command attribute, we recommend you use the command attribute. If you use the command attribute, you must use the username and password attributes as well.
Attribute | Values | Required |
---|---|---|
userid | the login id to use on the remote server. | No |
password | the login password to use on the remote server. | No |
server | the address of the remote rexec server. | Yes |
command | the command to execute on the remote server. | No |
port | the port number of the remote rexec server. | No; defaults to 512in Unix |
timeout | set a default timeout to wait for a response, specified in seconds. | No; default is no timeout |
The input to send to the server, and responses to wait for, are described as nested elements.
declare (as a text child of this element) a string to wait for. The element supports the timeout attribute, which overrides any timeout specified for the task as a whole. It also has a string attribute, which is an alternative to specifying the string as a text element.
It is not necessary to declare a closing <read>
element like for
the Telnet
task. The connection is not broken until the command has completed and the
input stream (output of the command) is terminated.
describes the text to send to the server. The echo boolean attribute controls whether
the string is echoed to the local log; this is true
by default.
A simple example of connecting to a server and running a command.
<rexec userid="bob" password="badpass" server="localhost" command="ls"/>
The task can be used with other ports as well:
<rexec port="80" userid="bob" password="badpass" server="localhost" command="ls"/>