文档介绍:Linux 系统应用与程序设计
主讲:邝颖杰
电邮:kuangyingjie@
临时文件
程序经常利用一些文件形式的临时存储手段
必须确保应用程序为临时文件选取的文件名是唯一的,否则linux是一个多任务的系统,另一个程序就可能选择同样的文件名,导致两个程序互相干扰
tmpnam
tmpnam函数可以生成唯一的文件名
#include <>
char *tmpnam(char *s)
该函数返回一个不与任何已存在文件同名的有效文件名,如果字符串s不为空,文件名会写入它
tmpfile
如果需要立刻使用临时文件,可以用tmpfile函数在给它命名的同时打开它
由于别的程序可能会创建出一个与tmpnam返回的文件名同名的文件,所以tmpfile很有用
该函数返回一个文件流指针,以读写方式打开临时文件
FILE *tmpfile(void)
演示
用户信息
用户都有一个唯一的标识符UID
Linux运行的每一个程序实际上都是被某一个用户运行的,因此都有一个关联的UID
用户UID信息
#include <sys/>
#include <>
uid_t getuid(void);
char *getlogin(void);
UID类型——uid_t,定义在sys/
getuid返回程序关联的UID,它通常是启动程序的用户的UID
getlogin函数返回与当前用户关联的登录名
用户密码信息
#include <sys/>
#include <>
struct passwd *getpwuid(uid_t uid);
struct passwd *getpwnam(const char *name);
以上两函数返回一个指针,指向与某个用户对应的passwd结构
Passwd结构
Char *pw_name 用户登录名
Uid_t pw_uid UID编号
Gid_t pw_gid gid编号
Char *pw_dir 用户主目录
Char *pw_gecos 用户全名
Char *pw_shell 用户默认shell