golang CLI를 사용하여 원격 시스템에서 명령 실행
원격 시스템에서 명령을 실행하려면 Golang CLI에서 "golang.org"를 활용할 수 있습니다. /x/crypto/ssh" 패키지. 귀하의 쿼리에 대한 해결책은 다음과 같습니다.
remoteRun 함수는 원격 시스템에서 단일 명령을 실행하고 해당 출력을 검색하는 방법을 보여줍니다.
func remoteRun(user string, addr string, privateKey string, cmd string) (string, error) { // Read or retrieve the private key key, err := ssh.ParsePrivateKey([]byte(privateKey)) if err != nil { return "", err } // Configure authentication config := &ssh.ClientConfig{ User: user, HostKeyCallback: ssh.InsecureIgnoreHostKey(), // Allow any host Auth: []ssh.AuthMethod{ ssh.PublicKeys(key), }, } // Establish a connection client, err := ssh.Dial("tcp", net.JoinHostPort(addr, "22"), config) if err != nil { return "", err } // Create a session session, err := client.NewSession() if err != nil { return "", err } defer session.Close() // Collect the command's output var b bytes.Buffer session.Stdout = &b // Execute the command err = session.Run(cmd) if err != nil { return "", err } return b.String(), nil }
이 함수는 사용자, 주소, 개인 정보를 가져옵니다. 키, 명령을 입력으로 사용하고 명령의 출력을 문자열로 반환합니다. 명령을 실행하려는 컴퓨터에 대한 액세스 권한을 부여하는 사용자, 주소 및 개인 키를 지정할 수 있습니다.
위 내용은 Golang CLI를 사용하여 원격 시스템에서 명령을 실행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!