以下是通过 Go 语言中的 lsblk 命令获取磁盘大小并将其输出为字符串的示例代码:

package main

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

func main() {
    cmd := exec.Command("lsblk", "-b", "-o", "SIZE")
    var out bytes.Buffer
    cmd.Stdout = &out
    err := cmd.Run()
    if err != nil {
        fmt.Println("Error:", err)
        return
    }
    diskSize := out.String()
    fmt.Println("Disk size:", diskSize)
}

解释:

  • 首先,我们需要导入 'os/exec' 包以执行 shell 命令。
  • 我们使用 'exec.Command()' 函数创建一个命令对象,并传递 'lsblk' 命令及其参数。
  • 我们使用 'bytes.Buffer' 来捕获命令的输出。
  • 我们将输出流指定为 '&out'。
  • 我们使用 'cmd.Run()' 函数来执行命令并捕获输出。
  • 最后,我们将输出转换为字符串并将其打印出来。

注意,我们在命令中使用了 '-b' 参数来将输出转换为字节而不是人类可读的格式,这样我们可以更容易地将其转换为字符串。如果你需要以人类可读的格式输出磁盘大小,你可以在命令中使用 '-h' 参数。

Golang 获取磁盘大小并输出为字符串

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

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