我正在开发一个Go应用程序,其中我想使用mount-utils包:https://pkg.go.dev/k8s.io/utils/mount

在这里,该程序包解析/proc/mount文件,而不是/proc/self/mount信息.

我如何使用这个包计算出源代码的价值?与/proc/self/mount信息相比,/proc/mount文件中缺少此信息.

推荐答案

mount.ParseMountInfo解析/proc/<pid>/mountinfo.

package main

import (
    "fmt"

    "k8s.io/utils/mount"
)

func main() {
    mounts, err := mount.ParseMountInfo("/proc/self/mountinfo")
    if err != nil {
        panic(err)
    }

    for _, m := range mounts {
        fmt.Printf("%-100s%s\n", m.MountPoint, m.Source)
    }
}

顺便说一句,包裹k8s.io/utils/mount已经被移到了新的位置.用k8s.io/mount-utils代替.

Linux相关问答推荐

AWK打印到文件正在追加,而不是覆盖

如果在两种模式之间找到文本,则使用sed删除它们之间的所有行

如何创建一堆文件中所有单词的列表?

奇怪的 Bash 脚本行为

有没有办法确定什么代码使 linux 共享对象inflating ?

将 Visual Studio C++ 项目迁移到 Linux 和 CMake

awk/sed 命令仅在模式 2 匹配时打印模式 1

在 bash 中解析变量

获取变量中的当前路径并使用它

全屏(Fullscreen)小部件

使用 Scp 时防止覆盖文件

加密/解密在两个不同的 openssl 版本之间不能很好地工作

scp 使用私钥身份验证将目录复制到另一台服务器

将 CMake 项目导入 Eclipse CDT

从文本文件中删除奇数行或偶数行

从bash中的字符串中删除所有特殊字符和大小写

如何找到只对所有者具有特定权限的文件?

限制程序在 Linux 中运行的时间

sed - 如何使用 sed 进行正则表达式组

计算每个进程打开的文件