c中是否有任何BTRFS库接口用于创建,删除或列出btrfs子卷?

时间:2014-07-04 10:46:09

标签: c ubuntu linux-kernel archlinux btrfs

我想在c中使用方便的API来获取给定btrfs分区中的子卷列表,如下面的命令所示。

btrfs子体积列表btrfs / subvol / path

1 个答案:

答案 0 :(得分:1)

如果找不到方便的API,popen就是您想要的:

#include <stdio.h>

FILE *popen(const char *command, const char *mode);
int pclose(FILE *stream);

int main(void)
{
    FILE *cmd = popen("btrfs subvolume list btrfs/subvol/path", "r");
    char result[128];

    while (fgets(result, sizeof(result), cmd) != NULL)
           printf("%s", result);
    pclose(cmd);
    return 0;
}