From 1a5d90c706b8e4626bea4014148ec87814ea875b Mon Sep 17 00:00:00 2001 From: david Date: Fri, 1 Mar 2024 23:53:20 +0800 Subject: [PATCH] dev --- cmd/ps.go | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/cmd/ps.go b/cmd/ps.go index d063a0e..2a5a73d 100644 --- a/cmd/ps.go +++ b/cmd/ps.go @@ -40,6 +40,7 @@ type PsTable struct { ServiceKey string `table:"Service Key"` Origin string Status string + PID string Performance string CurrentVersion string `table:"Current Version"` RegisterVersion string `table:"Register Version"` @@ -94,10 +95,13 @@ func getSrvStatus(srv string) PsTable { status = "\033[31mStop\033[0m\n" } + pid, cm := getProcessInfo(srv) + return PsTable{ Status: status, CurrentVersion: getCurrentVersion(srv), - Performance: getProcessInfo(srv), + PID: pid, + Performance: cm, } } @@ -124,12 +128,12 @@ func getCurrentVersion(srv string) string { return " - " } -func getProcessInfo(processName string) string { +func getProcessInfo(processName string) (string, string) { var info string = " - " cmd := exec.Command("ps", "-eo", "pid,%cpu,%mem,cmd") // 使用ps命令查询进程信息 output, err := cmd.Output() // 获取命令输出结果 if err != nil { - return info + return info, info } // 将输出按换行符分隔成多行字符串数组 @@ -142,13 +146,13 @@ func getProcessInfo(processName string) string { pid := fields[0] // PID(进程标识) cpuUsage := fields[1] // CPU使用情况 memoryUsage := fields[2] // 内存使用情况 - info = fmt.Sprintf("PID:%s / CPU:%s%% / MEM:%s%%", pid, cpuUsage, memoryUsage) - return info + info = fmt.Sprintf("CPU:%s%% / MEM:%s%%", pid, cpuUsage, memoryUsage) + return pid, info } } } - return info + return info, info } func checkProcessRunning(processName string) bool {