Fix bug where you cannot use '/usr/bin/env bash' as the shell for systems where bash is in a different location

This commit is contained in:
Soarinferret 2023-11-24 18:39:20 -06:00
parent db17e3e28e
commit 751b50e071

View File

@ -306,7 +306,8 @@ func (a *Agent) CmdV2(c *CmdOptions) CmdStatus {
} else if c.IsExecutable {
envCmd = gocmd.NewCmdOptions(cmdOptions, c.Shell, c.Command) // c.Shell: bin + c.Command: args as one string
} else {
envCmd = gocmd.NewCmdOptions(cmdOptions, c.Shell, "-c", c.Command) // /bin/bash -c 'ls -l /var/log/...'
commandArray := append(strings.Fields(c.Shell), "-c", c.Command)
envCmd = gocmd.NewCmdOptions(cmdOptions, commandArray[0], commandArray[1:]...) // /bin/bash -c 'ls -l /var/log/...'
}
var stdoutBuf bytes.Buffer