Unix文件系统和pwd命令实现 二

13.与目录树相关的命令和系统调用
命令 mkdir
实现 头文件 #include <sys/stat.h>  #include <sys/types.h>
    函数原型 int res=mkdir(char *path,mode_t mode);

命令 rmdir  删除一个目录,这个目录必须是空的
实现 头文件#include <unistd.h>
    函数原型int res=rmdir(const char* path);

命令 rm 减少相应i-节点连接数,若此时节点书减为0,就释放数据块和节点。不能用来删除目录
实现 头文件#include <unistd.h>
    函数原型int res=unlink(const char *path);

命令 ln 不能用来生成目录的链接。
实现 头文件#include <unistd.h>
    函数原型 int res=link(const char *old,const char *new);

命令 mv 删除原来的目录,复制到新的里面
实现 头文件#include <unistd.h>
    函数原型int res=rename(const char* from,const char *to);
原理:复制链接到新的名字/位置再删除原来的链接
    if(link("x","z")!=-1)
       unlink("x");

      
命令 cd  对进程有影响,对目录本身没有影响
实现 头文件 #include <unistd.h>
    函数原型 int res=chdir(const char *path);

14.pwd 命令的实现

 

 

运行结果:

caoli@caoli-laptop:~/workspace/test$ ./pwd1
/home/caoli/workspace/test
caoli@caoli-laptop:~/workspace/test$

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值