要获取所有进程的信息,可以使用'os'和'os/exec'包来执行系统命令。

以下是一个示例代码,可以在Go中获取所有进程的信息:

package main

import (
	"fmt"
	"os"
	"os/exec"
	"strings"
)

func main() {
	// 根据操作系统选择不同的命令
	var command string
	switch os := runtime.GOOS; os {
	case "windows":
		command = "tasklist"
	case "darwin":
		command = "ps aux"
	default:
		command = "ps -ef"
	}

	// 执行命令获取进程信息
	output, err := exec.Command("bash", " -c", command).Output()
	if err != nil {
		fmt.Println("执行命令出错:", err)
		return
	}

	// 解析输出结果
	processes := strings.Split(string(output), "\n")
	for _, process := range processes {
		fmt.Println(process)
	}
}

该代码会根据操作系统选择不同的命令来获取进程信息。在Windows上,使用'tasklist'命令,而在Mac和Linux上,使用'ps'命令。

请注意,此代码只是一个示例,可能需要根据实际情况进行修改和优化。

Golang 获取所有进程信息 - 示例代码

原文地址: https://www.cveoy.top/t/topic/qrmf 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录