🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## getpw ## 取得指定用户的密码文件数据 ### 相关函数 ### getpwent ### 表头文件 ### ``` #include<pwd.h> #include<sys/types.h> ``` ### 定义函数 ### ``` int getpw(uid_t uid,char *buf); ``` ### 函数说明 ### getpw()会从/etc/passwd中查找符合参数uid所指定的用户账号数据,找不到相关数据就返回-1。所返回的buf字符串格式如下:账号:密码:用户识别码(uid):组识别码(gid):全名:根目录:shell ### 返回值 ### 返回0表示成功,有错误发生时返回-1。 ### 附加说明 ### 1. getpw()会有潜在的安全性问题,请尽量使用别的函数取代。 2. 使用shadow的系统已把用户密码抽出/etc/passwd,因此使用getpw()取得的密码将为“x”。 ### 范例 ### ``` #include<pwd.h> #include<sys/types.h> main() { char buffer[80]; getpw(0,buffer); printf(“%s\n”,buffer); } ``` ### 执行 ### ``` root:x:0:0:root:/root:/bin/bash ```