gpt4 book ai didi

c - 使用 C 在 Linux 上查找任意文件的设备或挂载点

转载 作者:太空狗 更新时间:2023-10-29 11:19:03 25 4
gpt4 key购买 nike

这个问题是 Linux 特有的;该解决方案不需要便携。

我正在寻找一个库函数/系统调用,或者它们的某种组合,它们会给我设备(例如:/dev/sdb1)或挂载点(例如:/home ) 对于任意文件。看起来 statfs 结构的 f_fsid 字段可以解决问题,但在 Linux 上没有使用。

我可以使用 shell 轻松找到此信息:

df "$filename" | awk 'NR==1 {next} {print $6; exit}'

但是 exec 函数家族似乎没有一个从运行的命令返回输出,我宁愿让我的解决方案保持纯 C。

最佳答案

似乎stat(2) (或 lstat)是您正在寻找的功能。它将为您提供 st_dev 中的设备编号。

我认为df(1)不过,只是读取/etc/mtab。

关于c - 使用 C 在 Linux 上查找任意文件的设备或挂载点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26046949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com