linux中chdir函数如何进入根目录

chdir("..")可以返回上级目录,但chdir("/");不能进入根目录。求解... chdir("..")可以返回上级目录,但chdir("/");不能进入根目录。求解 展开
 我来答
阿尔迈凡
推荐于2017-09-10 · TA获得超过8460个赞
知道大有可为答主
回答量:5744
采纳率:14%
帮助的人:2012万
展开全部

只需要使用 / 作为参数即可进入到根目录了

但根目录下的操作需要拥有一定的权限(默认情况下)

#include <stdio.h>
#include <unistd.h>
#include <string.h>

int main(int argc,char **argv)
{
    if(chdir("/") == -1)
        perror("chdir");

    printf("%s\n",getcwd(NULL,0));

    return 0;
}

从该程序的打印就可以看出只需要chdir("/");便可以切换当前的路径为根目录

如果需要在根目录下进行相关操作的话需要使用拥有相关权限的帐户运行程序比如root帐户

wchyumo2011
推荐于2017-10-14 · TA获得超过2万个赞
知道大有可为答主
回答量:5810
采纳率:79%
帮助的人:2814万
展开全部
chroot: 改变根目录
头文件: unistd.h
函数定义: int chroot(const char *path);
说明: chroot()用来改变根目录为参数path所指定的目录. 只有超级用户才允许改变根目录, 子进程将继承新的根目录.
应用举例:
#include <stdio.h>
#include <unistd.h>
int main(void)
{

chroot("/tmp");
chdir("/");
return 0;
}
追问
把根目录改为/tmp后再进/是什么意思啊?
追答
现在的根目录应该是/tmp chdir("/")应该会进入/tmp
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式