1、密码文件/etc/passwd
•
#include <
pwd.h
>
•
struct
passwd
*
getpwuid
(
uid_t
uid
); //
根据
uid
读取
•
struct
passwd
*
getpwnam
(
const
char *name);//
根据名称读取
•
struct
passwd
*
getpwent
(void); //
顺序读取
•
void
setpwent
(void); //
回绕,从头再来
•
void
endpwent
(void); //
结束
2、组文件/etc/group
•
#include <
grp.h
>
•
struct
group *
getgrgid
(
gid_t
gid
); //
根据
gid
读取
•
struct
group *
getgrnam
(
const
char *name); //
根据名称读取
•
struct
group *
getpwent
(void); //
顺序读取
•
void
setgrent
(void); //
回绕,从头再来
•
void
endgrent
(void); //
结束
3、其它数据文件
4、系统标识
•
#include <sys/
utsname.h
>
•
int
uname
(
struct
utsname
*name); //
获取系统信息
•
struct
utsname
•
{
•
char
sysname
[]; /* name of the operating system */
•
char
nodename
[]; /* name of this node */
•
char release[]; /* current release of operating system */
•
char version[]; /* current version of this release */
•
char machine[]; /* name of hardware type */
•
};
•
#include <
unistd.h
>
•
int
gethostname
(char *name,
int
namelen
); //
仅获取主机名称
5、时间/日期函数
•
#include <
time.h
>
•
#include <sys/
time.h
>
•
time_t
time
(
time_t
*
calptr
);
•
int
gettimeofday
(
struct
timeval
*
tp
, void *
tzp
);
•
struct
tm *
gmtime
(
const
time_t
*
calptr
);
•
struct
tm *
localtime
(
const
time_t
*
calptr
);
•
time_t
mktime
(
struct
tm *
tmptr
);
•
char *
asctime
(
const
struct
tm *
tmptr
);
•
char *
ctime
(
const
time_t
*
calptr
);
•
size_t
strftime
(char *
buf
,
size_t
maxsize
,
const
char *format,
const
struct
tm *
tmptr
);