从C获取/设置逻辑工作目录

时间:2013-06-18 11:48:13

标签: c unix symlink working-directory

我有一个符号链接/ home / me / symlink - > /家/我/ realdir 当我尝试在目录/ home / me / symlink中获取时,我使用以下程序获取/ home / me / realdir:

 int main(int argc, char **argv)
{
    int ret;
    char path[PATH_MAX];
    getcwd(path, PATH_MAX);
    printf("path %s\n", path);
    return 0;
}

有没有办法获取目录/ home / me / symlink?并且,有没有办法将当前工作目录设置为符号链接目录?

1 个答案:

答案 0 :(得分:1)

予。不(docs) :

  

路径名不应包含点或点的组件,或者是符号链接。

然而,有一个解决方法:

char *cwd = getenv("PWD");

II。是(docs) :

chdir("/path/to/newcwd");