找回密码
 注册
关于网站域名变更的通知
查看: 238|回复: 1
打印 上一主题 下一主题

Linux C高级编程 Linux C语言实现ls -l(下)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-12 13:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
4.文件所有者和文件所有者组:通过stat结构体的注释信息可以看出,stat只能获取文件的uid和gid并不是uid gid对应的用户或组的名称。
& m" P5 @3 W3 V9 E9 H3 ^8 g* k% Y3 e, _! r, ]6 j" J; J
7 a) @2 d) J: i* X6 m" ^; P
uid找到对应的用户名是可以通过getpwuid这个系统调用获取,这个系统调用接受一个uid返回一个passwd的结构体,这个结构体成员如下:# s" G0 t1 w: Q& {  r$ R8 ?# i

5 ]: M1 S, l8 H4 z# [5 n1 g
* Z( x. c5 P9 A2 K% a
  • char *pw_name;//User’s login name.
  • uid_t pw_uid; //umerical user ID.
  • gid_t pw_gid; //Numerical group ID.
  • char *pw_dir;//Initial working directory.
  • char *pw_shell;//Program to use as shell.<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span>
    $ x4 q+ Y- y! b; h# ?. Y7 J

2 i8 o* P6 v" ^
5 Y2 U9 R& O: X! {9 u8 B, f

" N* E7 l/ \' J1 `9 _) t* L
% i: v7 v% N+ _7 F! E8 I
+ @/ ~. `8 e# [, H, M( J' c* \3 z6 r
gid对应的组名同样可以找到一个系统调用来获取,通过man我发现可以通过getgrgid()系统调用传入一个gid  A+ n% s" F- ^! N# P2 p8 t

1 u, m. w+ M- t' u7 X; O

7 s2 H0 J2 u7 \
游客,如果您要查看本帖隐藏内容请回复

7 V% u! l  ^4 s3 C, h, `) l
- `' \  s) r/ B% _8 `6 B
$ G* X* B* G4 ~% O) H

  ^* B- r  V5 C) J( V
% _' A9 m2 ?; j% ^5 m  R) _
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 20:55 , Processed in 0.171875 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表