tlpi

dingdingfish18 天前
linux·inotify·tlpi·exercise
TLPI 第19 章 练习:Monitoring File Events笔记和练习博客总目录见:开始读TLPI。本章随书示例程序位于目录inotify。编写一个程序,记录在命令行参数中指定的目录下的所有文件创建、删除和重命名操作。程序应监控指定目录下所有子目录的事件。要获取所有这些子目录的列表,需要使用 nftw()(第18.9节)。当树下添加一个新的子目录或删除一个目录时,监控的子目录集合应相应更新。
dingdingfish22 天前
linux·tlpi·exercise
TLPI 第17章 练习:Access Control Lists笔记和练习博客总目录见:开始读TLPI。编写一个程序,显示对应于特定用户或组的 ACL 条目的权限。程序应接受两个命令行参数。第一个参数是字母 u 或 g,用于指示第二个参数标识的是用户还是组。(可以使用第 159 页列表 8-1 中定义的函数,允许第二个命令行参数以数字或名称的形式指定。)如果对应于给定用户或组的 ACL 条目属于组类,那么程序还应显示在 ACL 条目被 ACL 掩码条目修改后将适用的权限。
dingdingfish1 个月前
linux·tlpi·exercise
TLPI 第12章 练习:System and Process Information笔记和练习博客总目录见:开始读TLPI。编写一个程序,根据程序命令行参数中指定的用户名,列出该用户运行的所有进程的进程ID和命令名称。(第159页的代码清单8-1中的userIdFromName()函数可能对你有用。)这可以通过检查系统中所有/proc/PID/status文件中的Name:和Uid:行来实现。遍历系统中所有/proc/PID目录需要使用readdir(3),相关描述见第18.8节。请确保你的程序能够正确处理以下情况:在程序确定某个/proc/PID目录存在之后、尝试打开对应的/proc/
dingdingfish1 个月前
linux·tlpi·exercise
TLPI 第4章 练习:File I/O: The Universal I/O Model笔记和练习博客总目录见:开始读TLPI。tee 命令读取其标准输入直到文件结束,将输入的副本写入标准输出和命令行参数指定的文件中。(当我们在第 44.7 节讨论 FIFO 时,会展示该命令的使用示例。) 使用 I/O 系统调用实现 tee。默认情况下,tee 会覆盖具有指定名称的任何现有文件。实现 –a 命令行选项(tee –a 文件),该选项使 tee 在文件已存在时将文本附加到文件末尾。(参见附录 B 中关于 getopt() 函数的描述,该函数可用于解析命令行选项。)
我是有底线的