Прежде всего, никогда не игнорируйте ошибки.Вызов cmd.Run()
возвращает ошибку, вы всегда должны ее проверить:
if err := cmd.Run(); err != nil {
fmt.Printf(os.Stderr, "%v", err)
}
Попробуйте, и вы увидите, почему ваша команда терпит неудачу.
Не зная ошибки, это сложночтобы исправить вашу проблему, но я думаю, вам нужно разбить строку command
на несколько полей и добавить их к cmdArgs
.При запуске runCommand("dir C:\\")
ваш cmdArgs
на самом деле []string{"/c", "dir C:\\")
, я думаю, что это должно быть []string{"/c", "dir", "C:\\"}
.Взгляните на функцию strings.Split(string, string)
, она может вам помочь.Но это всего лишь предположение, нам нужно знать точное сообщение об ошибке, которое вы имеете для правильного решения:)