检查你是否在主目录(linux)

时间:2017-03-06 00:47:11

标签: c linux path directory

我正在编写一个从给定路径提升文件系统层次结构的程序,因此如果给定的路径是/home/users/foo/bar,它将返回1个目录,直到它到达第一个目录,在这种情况下{ {1}}

检测此问题的最佳方法是什么?我唯一的解决方案是检查有多少退格,但是有更好的方法吗?我担心这可能不适用于不同的发行版。

我打开父目录的代码是:

/home

我只需要添加snprintf(ptr2, path_max_size, "%s/..", argv[1]); d = opendir(ptr2); 语句

1 个答案:

答案 0 :(得分:2)

像这样使用getenv()

snprintf(homedir, MAX_PATH, "%s", getenv("HOME"));

然后检查homedir是否属于您的目标。

如果您正在寻找适用于Windows和Linux的功能,请检查this