当前位置:  技术问答>linux和unix

用chdir()写一函数实现cd()功能

    来源: 互联网  发布时间:2016-08-20

    本文导语:  如题 | 你需要用到一系列函数。 目录其实也是一个文件,内容就是里面的文件名等信息。只不过不能用一般的fopen函数来打开。 opendir()   readdir()   closedir()  chdir() 怎么用的话google一下吧。...

如题

|
你需要用到一系列函数。
目录其实也是一个文件,内容就是里面的文件名等信息。只不过不能用一般的fopen函数来打开。
opendir()  
readdir()  
closedir() 
chdir()

怎么用的话google一下吧。

|
#include
#include 
#include 
#include 
#include 
#include 
#include 
#include 
int analyseCmd(char *p);
int main(void)
{
    char cmd[1001];
    char result[101];
    while(1)
    {
        memset(cmd, 0, 1000);
        printf("ysh>");
        fgets(cmd, 1000, stdin);
        cmd[strlen(cmd)-1]=0;
        if(analyseCmd(cmd)==1)
        {
                if(chdir(cmd + 3) != 0) {//从3开始就是转换工作空间的路径
                printf("chdir(%s) error!%sn", cmd + 3, strerror(errno));
                }
                printf("I'm working in '%s' nown", getcwd(result, 100));
        }
        else if(analyseCmd(cmd)==2)
        break;
        else
        printf("Bad command, try again!");
        break;
    }
    return 0;
}

int analyseCmd(char *p)
{
     if(!strncasecmp(p,"cd",2))
     return 1;
     if(!strncasecmp(p,"exit",2))
     return 2;
     else return 0;
}

    
 
 

您可能感兴趣的文章:

  • chdir 函数问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 我的ubuntu 怎么不能用chdir命令
  • chdir没起作用?
  • chdir问题
  • opendir() chdir() 的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3