ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux 系统函数之 (dirname, basename)

2022-07-11 20:08:44  阅读:312  来源: 互联网

标签:basename char usr linux path dirname 截取


 

 1 版权声明:本文为博主原创文章,未经博主允许不得转载。
 2 
 3         除非你的原件考虑跨平台。
 4 
 5        在Linux编程多使用一些系统函数真的很方便,哎没办法越来越懒~~~~~~
 6 
 7        今天记录一下dirname 和basename这两个简单的处理文件路径的linux系统函数。
 8 
 9       
10 
11        
12 
13         头文件:
14 
15                          #include <libgen.h>
16 
17         函数定义:
18 
19                          char *dirname(char *path);
20 
21                          char *basename(char *path);
22 
23         功能描述:
24 
25                         char *dirname(char *path);
26 
27                         功能: 截取path中的目录路径返回。
28 
29                         char *basename(char *path);
30 
31                         功能: 截取path中的去目录部分的最后的文件或路径名。
32 
33          返回值:
34 
35                        char *dirname(char *path);
36 
37                        成功: 返回截取path中的目录路径指针。
38 
39                        失败: 返回 NULL
40 
41                        char *basename(char *path);
42 
43                        成功: 返回截取path中的去目录部分的最后的文件或路径名指针。
44 
45                        失败: 返回 NULL
46 
47  
48 
49  
50 
51 示例图:
52 
53                        path         dirname    basename
54                        "/usr/lib"    "/usr"    "lib"
55                        "/usr/"       "/"       "usr"
56                        "usr"         "."       "usr"
57                        "/"           "/"       "/"
58                        "."           "."       "."
59                        ".."          "."       ".."
60 
61            
62 
63 代码示例:              
64 
65                      char *dirc, *basec, *bname, *dname;
66                      char *path = "/etc/passwd";
67 
68                      dirc = strdup(path);
69                      basec = strdup(path);
70                      dname = dirname(dirc);
71                      bname = basename(basec);
72                      printf("dirname=%s, basename=%s\n", dname, bname);

 

标签:basename,char,usr,linux,path,dirname,截取
来源: https://www.cnblogs.com/peifx/p/16467627.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有