zoukankan      html  css  js  c++  java
  • linux pwd指令C语言实现——20175303

    linux pwd指令C语言实现——20175303

    要求

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

    学习pwd命令

    打开终端,输入"man -k pwd",搜索与PWD有关的内容,显示PWD是打印目录的

    打印目录

    输入"man 1 pwd",学习PWD,参数有L/P两个

    -L:如果 PWD 环境变量包含了不包含文件名 .(点)或 ..(点点)的当前目录的绝对路径名,则显示 PWD 环境变量的值。否则,-L 标志与 -P 标志一样运行。
    -P:显示当前目录的绝对路径名。与 -P 标志一起显示的绝对路径不包含在路径名的绝对路径中涉及到符号链接类型的文件的名称。
    退出状态:该命令返回以下出口值:0 成功完成;>0 发生错误。

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

    输入"man -k pwd"找到的结果表明没有系统调用,将pwd的内容目录dir、grep 2系统调用输入查找
    描述相似的有getcwd,与pwd描述只差一个词print

    学习getcwd

    伪代码:

    用getcwd函数获得当前目录;
    然后打印出来;

    3 实现mypwd

    代码

    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    main(void)
    {
        char buf[1024];
        char *cwd =getcwd(buf, sizeof(buf));
        if (cwd == NULL) {
            perror("Get directory fail.
    ");
            exit(-1);
        } 
        else {
            printf("%s
    ", cwd);
             }
    }
    

    4 测试mypwd

    实现截图

  • 相关阅读:
    quotaon
    quotacheck
    quota
    query_module
    数据库连接驱动
    PHP 开发 APP 接口 学习笔记与总结
    Java实现 LeetCode 76 最小覆盖子串
    Java实现 LeetCode 74 搜索二维矩阵
    Java实现 LeetCode 74 搜索二维矩阵
    Java实现 LeetCode 74 搜索二维矩阵
  • 原文地址:https://www.cnblogs.com/cxd20175303/p/12046376.html
Copyright © 2011-2022 走看看