一起talk C栗子吧(第七十三回:C语言实例--DIY pwd命令)



各位看官们,大家好,上一回中咱们说的是DIY date命令的例子,这一回咱们说的例子是:DIY pwd命令。闲话休提,言归正转。让我们一起talk C栗子吧!

看官们,经常切换目录的时候,就会有不知道现在位于哪个目录下的感觉,这个时候就需要使用PWD命令来显示当前在哪个目录中。今天,我们一起来DIY PWD命令。

下面是DIY PWD命令的具体步骤:

  • 1.使用getcwd函数获取当前的路径;
  • 2.输出步骤1中获取到的路径。

下是我们DIY PWD命令的代码,请参考:

int pwds()
{
    char buf[PATH_SIZE];
    char *res;

    res = getcwd(buf,PATH_SIZE);

    if(res)
    {
        printf("%s\n",buf);
        return 0;
    }
    else
        return 1;
}

相对来说,该程序比较简单。不过有些注意事项,我们再强调一下:

在使用getcwd函数时需要一个足够大的内存空间来存放获取到的路径。如果空间不够大,有可能获取失败,因此,我们需要判断该函数的执行结果,通过结果来确认是否可以显示当前路径。

看官们,正文中就不写代码了,详细的代码放到了我的资源中,大家可以点击这里下载使用。

下面是程序的运行结果:

|->pwd
/home/talk8/Shell

下面是系统中PWD命令的运行结果,请大家和上面的结果进行对比:

$ pwd
/home/talk8/Shell

各位看官,关于DIY pwd命令的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解。


时间: 2024-10-28 11:24:10

一起talk C栗子吧(第七十三回:C语言实例--DIY pwd命令)的相关文章

一起talk C栗子吧(第七十四回:C语言实例--DIY cd命令)

各位看官们,大家好,上一回中咱们说的是DIY pwd命令的例子,这一回咱们说的例子是:DIY cd命令.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,在Linux系统中,终端提供的cd命令是我们最常用的命令之一,相信大家对它一定很熟悉了.今天,让我们一起来DIY cd命令吧.下面是具体的操作步骤: 1.从用户输入的内容中提取路径名称: 2.把刚才获取的路径名称传递给chdir函数,使用该函数切换到名称所在的目录中: 3.确认函数运行的结果,如果不能切换,给用户一个提示. 下面是我们

一起talk C栗子吧(第七十七回:C语言实例--DIY ls命令续)

各位看官们,大家好,上一回中咱们说的是DIY cat命令的例子,这一回咱们说的例子是:DIY ls命令续.闲话休提,言归正转.让我们一起talk C栗子吧! 我们在前面的章回中DIY过ls命令,时间不长,相信大家还有印象.咱们今天是对前面章回的补充,主要是对ls命令进行了扩展,使其在原来的基础上又可以支持l参数. 我们新增加了对l参数的支持,下面是具体的操作过程 ,请大家参考: 1.使用stat函数从文件中获取文件的属性: 2.依据属性中的st_mode值来判断文件的类型,比如目录,链接,管道等

一起talk C栗子吧(第十三回:C语言实例--单链表二)

各位看官们,大家好,从今天开始,我们讲大型章回体科技小说 :C栗子,也就是C语言实例.闲话休提, 言归正转.让我们一起talk C栗子吧! 看官们,上一回中咱们说的是链表以及单链表顺序储存方式的例子,这一回咱们继续说单链表的例子,不 过这一回咱们说的是:单链表链式存储. 看官们单链表的链式存储,咱们在上一回已经说过,这里就不再多说了.这一回主要举例子,通过例子来 说明什么是单链表的链式存储. 通过对比单链表的顺序储存和链式存储,可以看出来. 顺序存储链表的优点:遍历链表方便,查找也方便. 顺序存

一起talk C栗子吧(第二回:C语言实例--判断闰年)

各位看官们,大家好,从今天开始,我们讲大型章回体科技小说 :C栗子,也就是C语言实例.闲话休提, 言归正转.让我们一起talk C语言实例吧! 看官们,上一回中咱们给小说做了个开头,这一回咱们正式说C例子,这回说的例子是:判断闰年. 看官们,闰年是什么?这个是地理天文方面的概念.如果不明白的话,自己百度去,哈哈.我也偷一把懒. 看官们,判断闰年的方法有两种: 如果某年能被4整除,但是不能被100整除,那么这一年就是闰年. 如果某年能被400整除,那么这一年就是闰年. 看官们看到整除肯定想到除法了

一起talk C栗子吧(第二十三回:C语言实例--队列二)

各位看官们,大家好,上一回中咱们说的是队列及其特点,并且通过例子来说明队列,这一回咱们继续说 队列,不过咱们说的是链式存储形式的队列,这与上一回中顺序存储形式的队列不一样.闲话休提,言归 正转.让我们一起talk C栗子吧! 在代码中通过链表来实现队列的链式存储.而且定义了一个头结点,头结点主要用来保存队列的头部和尾 部信息,以及队列的长度信息.我们对队列的操作,本质上是对链表进行操作,队列中的结点可以看作是 链表中的结点,对队列进行入列(EnQueue)和出列(DeQueue)的操作,可以看作

一起talk C栗子吧(第六十六回:C语言实例--DIY字符串比较函数)

各位看官们,大家好,上一回中咱们说的是DIY字符串连接函数的例子,这一回咱们说的例子是:DIY字符串比较函数.闲话休提,言归正转.让我们一起talk C栗子吧! 我们在前面的章回中介绍过字符串比较函数,时间不长,但是有些看官已经忘记了,为了加深看官们对字符串比较函数的印象,我们准备DIY字符串比较函数.Just do it by yourself! 我们在前面的章回中一共介绍了两个字符串比较函数:strcmp,strncmp.接下来我们分别介绍如何DIY这两个字符串比较函数. DIY strcm

一起talk C栗子吧(第一百七十四回:C语言实例--关闭终端中的缓冲功能二)

各位看官们,大家好,上一回中咱们说的是关闭终端中缓冲功能的例子,这一回咱们继续说该例子.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们, 我们在上一回中介绍了如何关闭终端中的缓冲功能,当时是借助系统命令stty实现该功能的,这一回中我们将介绍另外一种关闭终端中回显功能的方法.该方法是通过终端的termios编程接口来操作终端的.关于termios接口的介绍和编程接口,我们在一百七十一回中介绍过了,因此,我们直接介绍如何通过termios编程接口来关闭终端缓冲功能. 下面是详细的操作步

七十三、分发系统介绍、expect脚本远程登录、expect脚本远程执行命令、expect传递参数

七十三.分发系统介绍.expect脚本远程登录 一.分发系统介绍 expect脚本:能传输文件,可以远程执行命令,不需要输入密码,上线代码. 首先,准备一台模板机器,这台机器上的代码是最新的代码,准备要上线的代码,要知道要线上机器的ip地址,还有对应用户和密码. 二.expect脚本远程登录 #  yum install -y expect 自动远程登录 [[email protected] sbin]# vim 1.expect       路径:/usr/local/sbin/ #! /us

一起talk C栗子吧(第七回:C语言实例--进制转换)

各位看官们.大家好,从今天開始.我们讲大型章回体科技小说 :C栗子,也就是C语言实例. 闲话休提, 言归正转.让我们一起talk C栗子吧! 看官们.上一回中咱们说的是生成随机数的样例.这一回咱们说的样例是:进制转换.说到进制预计大家 都不陌生.计算机中的进制有二进制.八进制,十进制,十六进制. 今天咱们将要说的是十进制怎样转换成二进制.八进制和十六进制.在这里我把敲代码的步骤和算法思路 写出来供大家參考. 1.获取用户想要转换的数值和想到转换的进制.这里要检查输入是否正确.这是程序健壮性的体现