函数 getpwuid(uid_t )、 getpwnam(char *)
用于根据用户uid或者用户名得到用户相关信息
函数 getpwent、setpwent、endpwent
调用getpwent可以返回口令文件中下一个记录项,调用setpwent是自我保护措施,
以便确保调用者在此之前已经调用getpwent打开了有关文件情况下,反绕有关文件使定位到文件开始处
使用结束一定要调用endpwent使文件处于关闭状态
这三个函数可以用于实现上面的两个函数(即 getpwuid和 getpwnam)
关于阴影口令的几个函数
getspname、 getspent、setspent、endspent
关于组文件的几个函数
getgrgid、getgrnam
以及和passwd文件类似的用于搜索的函数:
getgrent、setgrent、endgrent
自然这三个函数可以实现上面两个查找函数
附属组
获得所有附属组函数 getgroups
对一般系统文件的处理
至少有3个函数: get函数、 set函数、 end函数
登录账户记录:
utmp记录当前登录到系统的各个用户
wutmp跟踪各个登录和注销事件
可自行通过 manpaeg 查阅
一些关于时间的函数
time 函数返回当前时间日期。
在使用随机函数一开始设置种子的时候就经常使用 srand(time(NULL)); 来设置
clock_gettime
用于获取指定时钟的时间 P151
分别有
CLOCK_REALTIME 实时系统时间
CLOCK_MONOTONIC 不带负跳数的实时系统时间
CLOCK_PROCESS_CPUTIME_ID 调用进程的CPU时间
CLOXK_THREAD_CPUTIME_ID 调用线程的CPU时间
localtime和gmtime将日历时间(即time返回的类型)转化为分解的时间 并放在 struct tm 结构中
前者转为成本地时间 ,后者转换成协调统一的时间的年、月、。。。
mktime将 tm 结构转换成 time_t 形式
strftime 是类似于 sprintf 的函数,可通过结构体 tm 制作字符串
大致的过程就是
Step1 、得到 time 的返回值
Step2、利用localtime 将 time 返回值处理得到 tm 结构体对象
Step3、给strftime 函数传入空字符串 与 tm,按照格式将内容写入空字符串(该字符串长度必须满足)
另外,TZ变量也是改变函数返回值的一个因素。
好了,第六章也看完了。
也不好多说什么,从开头看到现在的内容讲的很简单,就是API的调用。也没多少实用程序的举例。
将来就算能用到这本书这几章的内容,估计也是看看目录,自己去manpage了。