首页 > 代码库 > linux 系统函数之 (dirname, basename)【转】

linux 系统函数之 (dirname, basename)【转】

转自:http://blog.csdn.net/peter_cloud/article/details/9308333

版权声明:本文为博主原创文章,未经博主允许不得转载。        除非你的原件考虑跨平台。       在Linux编程多使用一些系统函数真的很方便,哎没办法越来越懒~~~~~~       今天记录一下dirname 和basename这两个简单的处理文件路径的linux系统函数。                     头文件:                         #include <libgen.h>        函数定义:                         char *dirname(char *path);                         char *basename(char *path);        功能描述:                        char *dirname(char *path);                        功能: 截取path中的目录路径返回。                        char *basename(char *path);                        功能: 截取path中的去目录部分的最后的文件或路径名。         返回值:                       char *dirname(char *path);                       成功: 返回截取path中的目录路径指针。                       失败: 返回 NULL                       char *basename(char *path);                       成功: 返回截取path中的去目录部分的最后的文件或路径名指针。                       失败: 返回 NULL  示例图:                       path         dirname    basename                       "/usr/lib"    "/usr"    "lib"                       "/usr/"       "/"       "usr"                       "usr"         "."       "usr"                       "/"           "/"       "/"                       "."           "."       "."                       ".."          "."       ".."           代码示例:                                   char *dirc, *basec, *bname, *dname;                     char *path = "/etc/passwd";                     dirc = strdup(path);                     basec = strdup(path);                     dname = dirname(dirc);                     bname = basename(basec);                     printf("dirname=%s, basename=%s\n", dname, bname);

 

linux 系统函数之 (dirname, basename)【转】