Minix 3.2.1修改do_mkdir以打印绝对文件路径

时间:2015-04-16 18:57:54

标签: minix

我想修改/usr/src/servers/vfs/open.c中的do_mkdir,以便当我尝试使用mkdir命令在终端中打印我创建的目录的绝对路径时。我怎么能得到它?有什么想法吗?

我尝试了getcwd但是我得到了一个未定义的引用错误。

2 个答案:

答案 0 :(得分:0)

完整路径位于do_mkdir函数开头定义的变量fullpath中。访问权限也在下面代码中列出的变量上

printf("New dir -> %s, ", fullpath);
printf( (bits & S_IRUSR) ? "r" : "-");
printf( (bits & S_IWUSR) ? "w" : "-");
printf( (bits & S_IXUSR) ? "x" : "-");
printf( (bits & S_IRGRP) ? "r" : "-");
printf( (bits & S_IWGRP) ? "w" : "-");
printf( (bits & S_IXGRP) ? "x" : "-");
printf( (bits & S_IROTH) ? "r" : "-");
printf( (bits & S_IWOTH) ? "w" : "-");
printf( (bits & S_IXOTH) ? "x\n" : "-\n");

将此代码放在do_mkdir行前unlock_vnode(vp);的末尾,然后就完成了!

Έχειςκάνειταυπόλοιπαερωτήματα??

答案 1 :(得分:0)

我认为简单地打印fullpath变量不起作用。 实际上,我测试了它,它似乎只打印创建的目录的名称。有线索吗?