第八周课上额外项目:pwd的实现

项目要求:

1 学习pwd命令
2 研究pwd实现需要的系统调用(man -k; grep),写出伪代码
3 实现mypwd
4 测试mypwd
并且上交博客链接。

实验步骤

我首先不懂pwd到底是个啥,于是我就查了一下man文档:

得知,pwd命令的功能是绝对路径的方式显示用户当前工作目录,
man文档有很多帮助信息,比如各类参数的用法,而且如果没有特定指定参数的话,默认是-P的。
而且老师还提醒过,抄别人代码时要是那个人用的是绝对路径,抄到自己的电脑里的时候就错了,所以要把代码搞明白之后再抄,但是那个人用的是相对路径的话就没问题了。

试试pwd命令的用法:

开始实现:
我注意到SEE ALSO这里有一个getpwd()的命令,

通过查看帮助文档得知,getcwd的功能是得当前的工作目录的绝对路径复制到参数buffer所指的内存空间中,参数maxlen为buffer的空间大小。头文件为#include <unistd.h>

伪代码如下:

char buf[128];
getcpwd(buf,sizeof(buf));
printf buf;

代码实现:

#include "stdio.h"
#include "unistd.h"
int main()
{
    char buf[128];
    getcwd(buf,sizeof(buf));
    printf("%s
",buf);
    return 0;
} 

测试截图:

原文地址:https://www.cnblogs.com/zhuanyedajiesanshinian/p/7860759.html