加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 为什么mkdir无法使用波浪号(?)?

发布时间:2020-12-16 05:19:17 所属栏目:百科 来源:网络整理
导读:当我写 mkdir("~/folder1",0777); 在linux中,无法创建目录.如果我用扩展的主目录替换?,它可以正常工作.使用?有什么问题? 谢谢 解决方法 ?只知道shell而不是mkdir系统调用. 但如果你尝试: system("mkdir ~/foo"); 这作为“mkdir?/ foo”被传递到shell和shel
当我写
mkdir("~/folder1",0777);

在linux中,无法创建目录.如果我用扩展的主目录替换?,它可以正常工作.使用?有什么问题?

谢谢

解决方法

?只知道shell而不是mkdir系统调用.

但如果你尝试:

system("mkdir ~/foo");

这作为“mkdir?/ foo”被传递到shell和shell扩展?$HOME

如果要使用mkdir的$HOME,可以使用getenv功能:

char path[MAX];
char *home = getenv ("HOME");
if (home != NULL) {
        snprintf(path,sizeof(path),"%s/new_dir",home);
        // now use path in mkdir
        mkdir(path,PERM);
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读