news 2026/5/1 5:06:17

26、深入探索用户与组数据库读取及数组遍历

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
26、深入探索用户与组数据库读取及数组遍历

深入探索用户与组数据库读取及数组遍历

在编程中,获取用户和组的相关信息是一项常见需求。同时,处理多维数组也经常会遇到。下面将详细介绍如何读取用户与组数据库,以及如何遍历多维数组。

读取用户数据库

PROCINFO 数组可提供当前用户的真实和有效用户及组 ID 号,但这些数字对普通用户来说信息价值不大。为了获取与用户和组 ID 号相关的有用信息,需要一套从用户数据库中检索信息的函数。

POSIX 标准未定义存储用户信息的文件,而是提供了<pwd.h>头文件和几个 C 语言子例程来获取用户信息,其中主要函数是getpwent()用于获取密码条目。虽然 awk 程序可直接读取/etc/passwd文件,但该文件可能不包含系统所有用户的完整信息。因此,需要编写一个调用getpwent()的 C 程序来生成用户数据库的可读完整版本。

以下是一个名为pwcat的 C 程序,用于输出密码数据库:

/* * pwcat.c * * Generate a printable version of the password database. */ #include <stdio.h> #include <pwd.h> int main(int argc, char **argv) { struct passwd *p; while ((p = getpwent()) != NULL
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 14:38:04

41、Awk语言的发展历程、特性扩展及贡献者

Awk语言的发展历程、特性扩展及贡献者 1. Awk语言的版本变迁与特性添加 Awk语言在不同版本的Unix系统中经历了显著的发展。 1.1 V7到SVR3.1的主要变化 从1978年的Version 7 Unix发布到1987年的System V Release 3.1版本,Awk语言有了诸多重要改变: - 行内规则分隔:需要使…

作者头像 李华
网站建设 2026/4/25 0:35:27

2、UNIX 系统中的 C 语言使用与标准 I/O 库详解

UNIX 系统中的 C 语言使用与标准 I/O 库详解 1. UNIX 系统环境概述 UNIX 非常适合研究环境,因为研究环境需要更快的文件系统、更好的虚拟内存处理能力以及更多样化的编程语言。 不同厂商的 UNIX 系统 : Sun Microsystems 拥有大量的 UNIX 工作站安装基础,使用基于 Berke…

作者头像 李华
网站建设 2026/4/22 13:27:38

6、UNIX系统中C语言的设备I/O控制详解

UNIX系统中C语言的设备I/O控制详解 1. 本地模式字 在新的tty驱动程序中,额外的模式是通过本地模式字来设置的。这个模式字的功能类似于 sgttyb 结构中的 sg_flags 字,它实际上就是一个32位整数,会和下面要讨论的操作常量之一一起传递给 ioctl 函数。 一些比较有用的…

作者头像 李华
网站建设 2026/4/30 17:13:17

Yolo_Label终极指南:快速掌握YOLO目标检测标注神器

Yolo_Label终极指南&#xff1a;快速掌握YOLO目标检测标注神器 【免费下载链接】Yolo_Label GUI for marking bounded boxes of objects in images for training neural network YOLO 项目地址: https://gitcode.com/gh_mirrors/yo/Yolo_Label 想要训练高性能的YOLO目标…

作者头像 李华
网站建设 2026/4/30 18:48:04

CANopenNode STM32终极指南:嵌入式工业通信的完整解决方案

CANopenNode STM32终极指南&#xff1a;嵌入式工业通信的完整解决方案 【免费下载链接】CanOpenSTM32 CANopenNode on STM32 microcontrollers. 项目地址: https://gitcode.com/gh_mirrors/ca/CanOpenSTM32 面对工业自动化中设备通信的复杂挑战&#xff0c;您是否曾为协…

作者头像 李华
网站建设 2026/5/1 0:12:42

Steam成就管理工具完整指南:3分钟掌握游戏数据掌控技巧

Steam成就管理工具完整指南&#xff1a;3分钟掌握游戏数据掌控技巧 【免费下载链接】SteamAchievementManager Steam Achievement Manager 项目地址: https://gitcode.com/gh_mirrors/ste/SteamAchievementManager 还在为Steam成就无法解锁而苦恼&#xff1f;想要备份重…

作者头像 李华