public static class ShellUtils.ShellCommandExecutor extends ShellUtils
ShellCommandExecutor
should be used in cases where the output
of the command needs no explicit parsing and where the command, working directory and the environment remains unchanged. The output
of the command is stored as-is and is expected to be small.ShellUtils.ExitCodeException, ShellUtils.OSType, ShellUtils.ShellCommandExecutor
FREEBSD, LINUX, LOG, MAC, numShellExceptions, osType, OTHER, SOLARIS, timeOutInterval, TOKEN_SEPARATOR_REGEX, WINDOWS
Constructor and Description |
---|
ShellCommandExecutor(String[] execString) |
ShellCommandExecutor(String[] execString,
File dir) |
ShellCommandExecutor(String[] execString,
File dir,
Map<String,String> env) |
ShellCommandExecutor(String[] execString,
File dir,
Map<String,String> env,
long timeout)
Create a new instance of the ShellCommandExecutor to execute a command.
|
Modifier and Type | Method and Description |
---|---|
void |
execute()
Execute the shell command.
|
String[] |
getExecString()
return an array containing the command name & its parameters.
|
String |
getOutput()
Get the output of the shell command.
|
protected void |
parseExecResult(BufferedReader lines)
Parse the execution result.
|
String |
toString()
Returns the commands of this instance.
|
getExitCode, getGroupsForUserCommand, getLogHandler, getProcess, isTimedOut, run, setEnvironment, setWorkingDirectory
public ShellCommandExecutor(String[] execString)
public ShellCommandExecutor(String[] execString, File dir, Map<String,String> env)
public ShellCommandExecutor(String[] execString, File dir, Map<String,String> env, long timeout)
execString
- The command to execute with argumentsdir
- If not-null, specifies the directory which should be set as the current working directory for the command. If
null, the current working directory is not modified.env
- If not-null, environment of the command will include the key-value pairs specified in the map. If null, the
current environment is not modified.timeout
- Specifies the time in milliseconds, after which the command will be killed and the status marked as timedout.
If 0, the command will not be timed out.public void execute() throws IOException
IOException
public String[] getExecString()
ShellUtils
getExecString
in class ShellUtils
protected void parseExecResult(BufferedReader lines) throws IOException
ShellUtils
parseExecResult
in class ShellUtils
IOException
public String getOutput()
Copyright © 2023 The Apache Software Foundation. All rights reserved.