Class SSHExec

  • All Implemented Interfaces:
    java.lang.Cloneable, LogListener

    public class SSHExec
    extends SSHBase
    Executes a command on a remote machine via ssh.
    Since:
    Ant 1.6 (created February 2, 2003)
    • Constructor Detail

      • SSHExec

        public SSHExec()
        Constructor for SSHExecTask.
    • Method Detail

      • setCommand

        public void setCommand​(java.lang.String command)
        Sets the command to execute on the remote host.
        Parameters:
        command - The new command value
      • setCommandResource

        public void setCommandResource​(java.lang.String f)
        Sets a commandResource from a file
        Parameters:
        f - the value to use.
        Since:
        Ant 1.7.1
      • setTimeout

        public void setTimeout​(long timeout)
        The connection can be dropped after a specified number of milliseconds. This is sometimes useful when a connection may be flaky. Default is 0, which means "wait forever".
        Parameters:
        timeout - The new timeout value in seconds
      • setOutput

        public void setOutput​(java.io.File output)
        If used, stores the output of the command to the given file.
        Parameters:
        output - The file to write to.
      • setErrorOutput

        public void setErrorOutput​(java.io.File output)
        If used, stores the erroutput of the command to the given file.
        Parameters:
        output - The file to write to.
        Since:
        Apache Ant 1.9.4
      • setInput

        public void setInput​(java.io.File input)
        If used, the content of the file is piped to the remote command
        Parameters:
        input - The file which provides the input data for the remote command
        Since:
        Ant 1.8.0
      • setInputProperty

        public void setInputProperty​(java.lang.String inputProperty)
        If used, the content of the property is piped to the remote command
        Parameters:
        inputProperty - The property which contains the input data for the remote command.
        Since:
        Ant 1.8.0
      • setInputString

        public void setInputString​(java.lang.String inputString)
        If used, the string is piped to the remote command.
        Parameters:
        inputString - the input data for the remote command.
        Since:
        Ant 1.8.3
      • setAppend

        public void setAppend​(boolean append)
        Determines if the output is appended to the file given in setOutput. Default is false, that is, overwrite the file.
        Parameters:
        append - True to append to an existing file, false to overwrite.
      • setErrAppend

        public void setErrAppend​(boolean appenderr)
        Determines if the output is appended to the file given in setErrorOutput. Default is false, that is, overwrite the file.
        Parameters:
        appenderr - True to append to an existing file, false to overwrite.
        Since:
        Apache Ant 1.9.4
      • setOutputproperty

        public void setOutputproperty​(java.lang.String property)
        If set, the output of the command will be stored in the given property.
        Parameters:
        property - The name of the property in which the command output will be stored.
      • setErrorproperty

        public void setErrorproperty​(java.lang.String property)
        If set, the erroroutput of the command will be stored in the given property.
        Parameters:
        property - The name of the property in which the command erroroutput will be stored.
        Since:
        Apache Ant 1.9.4
      • setResultproperty

        public void setResultproperty​(java.lang.String property)
        If set, the exitcode of the command will be stored in the given property.
        Parameters:
        property - The name of the property in which the exitcode will be stored.
        Since:
        Apache Ant 1.9.4
      • setUsePty

        public void setUsePty​(boolean b)
        Whether a pseudo-tty should be allocated.
        Parameters:
        b - boolean
        Since:
        Apache Ant 1.8.3
      • setUseSystemIn

        public void setUseSystemIn​(boolean useSystemIn)
        If set, input will be taken from System.in
        Parameters:
        useSystemIn - True to use System.in as InputStream, false otherwise
        Since:
        Apache Ant 1.9.4
      • setSuppressSystemOut

        public void setSuppressSystemOut​(boolean suppressSystemOut)
        If suppressSystemOut is true, output will not be sent to System.out, if suppressSystemOut is false, normal behavior
        Parameters:
        suppressSystemOut - boolean
        Since:
        Ant 1.9.0
      • setSuppressSystemErr

        public void setSuppressSystemErr​(boolean suppressSystemErr)
        If suppressSystemErr is true, output will not be sent to System.err, if suppressSystemErr is false, normal behavior
        Parameters:
        suppressSystemErr - boolean
        Since:
        Ant 1.9.4
      • setHideSensitive

        public void setHideSensitive​(boolean hideSensitive)
        If hideSensitive is true, command will be checked for placeholders to replace, If hideSensitive is false, command will be executed as is, Prevents from sensitive data appearance in logs
        Parameters:
        hideSensitive - boolean
      • setBindSensitive

        public void setBindSensitive​(java.lang.String bindSensitive)
        Sets the placeholders with sensitive data to replace in command, Prevents from sensitive data appearance in logs
        Parameters:
        bindSensitive - String
      • setSensitiveDelimiter

        public void setSensitiveDelimiter​(java.lang.String sensitiveDelimiter)
        Sets the delimiter of sensitive data key values pairs in bindSensitive
        Parameters:
        sensitiveDelimiter - String
      • setPlaceholderBrackets

        public void setPlaceholderBrackets​(java.lang.String placeholderBrackets)
        Sets delimiter to find placeholders and replace them
        Parameters:
        placeholderBrackets - String
      • execute

        public void execute()
                     throws BuildException
        Execute the command on the remote host.
        Overrides:
        execute in class Task
        Throws:
        BuildException - Most likely a network error or bad parameter.