Go에서 명령줄 인수 사용
이 Go 코드는 특정 인수와 함께 "top" 명령을 사용하여 10개 프로세스의 세부 정보를 성공적으로 검색합니다.
package main import ( "os/exec" ) func main() { print(top()) } func top() string { app := "/usr/bin/top" cmd := exec.Command(app, "-n", "10", "-l", "2") out, err := cmd.CombinedOutput() if err != nil { return err.Error() + " " + string(out) } value := string(out) return value }
그러나 "-o cpu" 인수를 추가하면 오류:
cmd := exec.Command(app, "-o", "cpu", "-n", "10", "-l", "2")
콘솔에서 "top -o cpu -n 10 -l 2" 명령이 의도한 대로 작동합니다. 문제는 "-o" 인수가 "top" 명령에 전달되는 방식에 있습니다.
이 문제를 해결하려면 다음과 같이 인수를 명시적으로 구분해야 합니다.
cmd := exec.Command(app, "-o", "cpu", "-n", "10", "-l", "2")
이렇게 하면 인수가 명령에 올바르게 전달되어 제대로 실행될 수 있습니다.
위 내용은 My Go `exec.Command`에 `top`에 대해 '-o cpu'를 추가하면 오류가 발생하는 이유는 무엇이며 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!