项目要求:
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\n",buf);
return 0;
}
测试截图: