| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> Linux学习日记13——目录操作 -> 正文阅读 |
|
[系统运维]Linux学习日记13——目录操作 |
学习视频链接 黑马程序员-Linux系统编程_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1KE411q7ee?p=65&spm_id_from=pageDriver 目录 一、getcwd 和 chdir 函数1.1 getcwd函数1、作用 获取进程当前工作目录(卷3 标库函数:man 3 getcwd) 2、char *getcwd(char *buf, size_ t size); 成功?buf 中保存当前进程工作目录位置 失败返回 NULL 1.2?chdir 函数1、作用 改变当前进程的工作目录。 2、int chdir(const char *path);? 成功 返回 0? 失败 返回 -1,设置 errno 为相应的值 1.3?测试案例获取及修改当前进程的工作目录,并打印至屏幕 ? 二、文件和目录权限2.1 vim查看目录1、目录内容: 目录文件也是 “文件”。其文件内容是该目录下所有子文件的目录项 dentry。可以尝试用 vim 打开一个目录。 2、用 vim 打开目录 ?下面 imp_cd.c 和 a 是目录项 2.2 目录权限和文件权限区别
修改文件夹权限 三、opendir、readdir、closedir函数3.1?opendir 函数1、作用 根据传入的目录名打开一个目录(库函数,不是系统调用,查看这个函数在第三卷 man 3 opendir) 2、DIR *opendir(const char *name); 成功返回指向该目录结构体指针,失败返回 NULL 参数支持相对路径、绝对路径两种方式:例如:打开当前目录:① getcwd(),opendir()? ? ② opendir("."); 3.2?readdir1、作用 读取目录(库函数) 2、struct dirent *readdir(DIR *dirp); 成功返回目录项结构体指针 失败返回 NULL,设置 errno 为相应值 需注意返回值,读取数据结束时也返回 NULL 值,所以应借助 errno 进一步加以区分 3、struct 结构体? 其成员变量重点记忆两个:d_ino、 d_name。实际应用中只使用到 d_name 因为 d_name 数组最大为 256,所以目录项限定为 255(名字 + \n 要小于 256) 3.3 closedir 函数1、作用 关闭打开的目录。 2、int closedir(DIR *dirp); 成功返回 0 失败返回?-1,设置 errno 为相应值 3.4 测试案例1、使用上述三个函数实现一个 ls 的效果 2、C语言代码 3、编译执行 4、不显示 .. 和 . ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 22:29:42- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |