码迷,mamicode.com
首页 > 其他好文 > 详细

获取当前目录getcwd,设置工作目录chdir,获取目录信息

时间:2017-01-22 16:43:23      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:char   read   proc   int   return   读取   目录   ack   工作   

#include <unistd.h>
#include <stdio.h>
#include <limits.h>


int main(int argc, char* argv[])
{
    char buf[PATH_MAX];
    
    getcwd(buf, PATH_MAX-1);
    
    printf("the current path is :%s\n", buf);

    return 0;
}

设置工作目录:

#include <unistd.h>

int chdir(const char *path);
int fchdir(int fd);

chdir() changes the current working directory of the calling process to the directory specified in path.

fchdir() is identical to chdir(); the only difference is that the directory is given as an open file descriptor.

 -----------------------------------

只要对目录有读写权限,就可获取目录信息。

打开目录:opendir

读取目录: readdir

关闭目录:closedir

DIR *opendir(const char *name);
DIR *fdopendir(int fd);

struct dirent *readdir(DIR *dirp);

int closedir(DIR *dirp);

 

#include <sys/types.h>
#include <dirent.h>
#include <stdlib.h>
#include <stdio.h>


int my_readdir(const char* path)
{
    DIR *dirp;
    struct dirent *ptr;

    if ( (dirp=opendir(path)) == NULL)
    {
        return -1;
    }

    while( (ptr=readdir(dirp)) != NULL)
    {
        printf("file name is:%s\n", ptr->d_name);
    }
    
    return 0;
}


int main(int argc, char* argv[])
{
    
    if (argc < 2)
    {
        exit(0);
    }

    if(my_readdir(argv[1])  < 0)
    {
        exit(0);
    }

    return 0;
}

 

获取当前目录getcwd,设置工作目录chdir,获取目录信息

标签:char   read   proc   int   return   读取   目录   ack   工作   

原文地址:http://www.cnblogs.com/zhangxuan/p/6340439.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!