首页 > 其他分享 >mypwd

mypwd

时间:2022-10-23 21:37:13浏览次数:60  
标签:dirt int char pwd str mypwd inode

题目要求

学习pwd命令
研究pwd实现需要的系统调用(man -k; grep),写出伪代码
实现mypwd
测试mypwd
学习pwd命令

用man pwd 查看帮助文档


显示当前目录所在路径 pwd
显示当前目录的物理路径 pwd –P
显示当前目录的连接路径:pwd -L


研究pwd实现需要的系统调用(man -k; grep),写出伪代码

实现pwd命令
代码:
void printpath();
char *inode_to_name(int);
int getinode(char *);
int main()
{
printpath();
putchar('\n');
return ;
}
void printpath()
{
int inode,up_inode;
char *str;
inode = getinode(".");
up_inode = getinode("..");
chdir("..");
str = inode_to_name(inode);
if(inode == up_inode) {
// printf("/%s",str);
return;
}
printpath();
printf("/%s",str);
}
int getinode(char *str)
{
struct stat st;
if(stat(str,&st) == -1){
perror(str);
exit(-1);
}
return st.st_ino;
}
char *inode_to_name(int inode)
{
char *str;
DIR *dirp;
struct dirent *dirt;
if((dirp = opendir(".")) == NULL){
perror(".");
exit(-1);
}
while((dirt = readdir(dirp)) != NULL)
{
if(dirt->d_ino == inode){
str = (char )malloc(strlen(dirt->d_name)sizeof(char));
strcpy(str,dirt->d_name);
return str;
}
}
perror(".");
exit(-1);
}

标签:dirt,int,char,pwd,str,mypwd,inode
From: https://www.cnblogs.com/gtgtgt/p/16819591.html

相关文章

  • mypwd
    通过查询man手册可知,pwd用于打印当前目录的整个路径名,即目录的绝对地址。 见图片 绝对路径:目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径。完整的描述文件......
  • mypwd
    pwd命令语法pwd命令用于显示工作目录。执行pwd指令可立刻得知我们目前所在的工作目录的绝对路径名称。使用helppwd来查看pwd的功能   参数:-L:--logical......
  • mypwd
    目录学习任务1.学习pwd2.研究pwd实现需要的系统调用(man-k;grep),写出伪代码首先manpwd命令获取pwd命令的相关信息然后输入man-kdirectory|grep2得知getcwd()函......
  • 实现mypwd
    1、要求:1学习pwd命令2研究pwd实现需要的系统调用(man-k;grep),写出伪代码3实现mypwd4测试mypwd提交过程博客的链接2、过程:(1)学习pwd命令1:查看pwd命令的帮助信......
  • mypwd
    学习pwd命令该命令用来显示目前所在的工作目录。指令英文原义:printworkdirectory显示当前目录所在路径pwd显示当前目录的物理路径pwd研究pwd实现需要的系统调用(......
  • mypwd实现
    理解pwdpwd的作用是显示当前目录所在路径manpwd–P:显示当前目录的物理路径-L:显示当前目录的连接路径mypwd代码思路根据文件名获取文件的inode-numberstat()通过......
  • mypwd——C语言实现pwd
    学习pwdmanpwdpwd作用:输出当前目录的路径研究pwd实现需要的系统调用man-kdir|grep2伪代码利用getcwd读取目录的路径信息使用printf输出学习getcwdmanget......
  • mypwd学习笔记
    Mypwd1.学习pwd命令manpwd查询:pwd指令功能:Linuxpwd(英文全拼:printworkdirectory)命令用于显示工作目录。执行pwd指令可立刻得知您目前所在的工作目录的绝对路径......
  • mypwd的实现
    学习任务0推荐在openEuler中完成1学习pwd命令2研究pwd实现需要的系统调用(man-k;grep),写出伪代码3实现mypwd4测试mypwd提交过程博客的链接或截图1.学习pw......
  • 实现mypwd
    实验内容1.学习pwd命令2.研究pwd实现需要的系统调用(man-k;grep),写出伪代码3.实现mypwd4.测试mypwd实践过程学习pwd命令1.pwd命令功能Linux中,pwd命令用于显示工......