首页 > 其他分享 >实现mypwd

实现mypwd

时间:2022-10-19 17:12:19浏览次数:51  
标签:stat 实现 -- pwd mypwd inode 目录

mypwd

实验环境:openeuler操作系统、ubuntu操作系统

pwd命令学习

pwd命令用于显示工作目录。
执行 pwd 指令可立刻得知我们目前所在的工作目录的绝对路径名称。
使用help pwd来查看pwd的功能

语法

pwd [--help][--version]

参数说明
  • --help 在线帮助。
  • --version 显示版本信息。
示例

查看当前所在目录:
在openeuler终端输入pwd

可见输出了当前用户所在的目录

实现pwd所需要的系统调用

原本在openeuler系统输入命令,发现不适用grep,就用ubuntu查看。

使用man stat命令查看stat功能,我们可知stat函数可以查看文件的相关信息等。

头文件为:include <sys/types.h> #include <sys/stat.h> #include <unistd.h>
函数原型:int stat(const char *path, struct stat *buf)
猜测欲要列出目录信息,肯定还涉及目录的打开和读取,这就需要调用opendir函数,readdir函数,需要用到dirent结构体。

伪代码

1.定义指针打开目录
inode_to_name:
2.如果不为NULL,获取当前目录的inode_number,返回
3.通过chdir() 返回上一级目录up_inode
4.通过比较现在的inode和up_inode,如果相等,就没有上一级目录,即找到了根目录,就打印输出现存绝对路径
5.如果不相等,就获取当前目录名称,返回inode_to_name。

实现pwd



测试mypwd

代码运行结果如下:
可发现和键入pwd命令效果相同。

标签:stat,实现,--,pwd,mypwd,inode,目录
From: https://www.cnblogs.com/ssssspm/p/16806592.html

相关文章

  • 直播平台开发,序列化时实现任意类型自定义转换
    直播平台开发,序列化时实现任意类型自定义转换1、前言在对象进行序列化时,希望对序列化的字段进行格式化处理,比如:Double与String转换、BigDecimal与String转换、Long与Date......
  • 用定时器和中断共同实现红绿灯程序
    1CURR_NUMEQU30H;HEX,进行15~1的倒计时2VAR_TIMEREQU31H;Softtimer,记录溢出的次数3VAR_LEDEQU32H;L......
  • C++11 实现一个自动注册的工厂
    之前在项目代码里面看到同事写了个自动注册的工厂类,虽然当时我看不懂,但我大受震撼。今天又重新温习了一下这种写法,分享给大家,可见学好C++是多么的重要。实现动机工厂方法......
  • 希尔排序的算法思想与实现
    希尔排序基本思想:先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第......
  • 如何高性价比地构建GPU环境,实现GPU自由?
     Datawhale 主题:构建GPU环境引言:要做深度学习,必然需要GPU,如何构建一个弹性的GPU环境是很多读者关心和常问的问题,今天主要分享关于云服务器的选择。由于购买GPU价格高昂......
  • mypwd
    0推荐在openEuler中完成1学习pwd命令2研究pwd实现需要的系统调用(man-k;grep),写出伪代码3实现mypwd4测试mypwd提交过程博客的链接或截图 1.学习pwd命令......
  • Window Server+IIS配置实现一台服务器绑定多个HTTPS证书
    参考原文链接:https://blog.csdn.net/lengyiqiu/article/details/89182239此处做个记录防止丢失:直接上步骤:1、选安装好SSL证书,供下面配置站点时使用2、在第一个站点绑定......
  • 音视频进阶教程-SEI直播补充增强信息实现
    1SEI功能简介在音视频流媒体应用中,除了可以流媒体通道推拉音视频内容外,还可以使用流SEI(SupplementalEnhancementInformation,媒体补充增强信息)通过流媒体通道将文本信......
  • wangEditor实现导入word并将内容显示到编辑器中
    ​ 当前功能基于PHP,其它语言流程大抵相同。大概流程:1.将docx文件上传到服务器中2.使用PHPoffice/PHPword实现将word转换为HTML3.将HTML代码返回并赋值到编辑器中......
  • python语言:将多张图片压成一段视频——利用opencv-python库实现
     相关代码例子参见:​​All_finished_Demo.py​​   =========================================   这里将的功能就是用python语言实现将多张照片压成一段视频,使用的......