touch 指令 Linux 理论知识:文件类型的认识
语法:touch [选项]… 文件…
功能:touch 命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项:• -a:change only the access time • -c:change only the modification time
Windows 系统当中,标识文件唯一性,是通过路径标识的!
直观理解(日常使用层面,你说的没错)
完整路径:C:\\test\\demo.txt
⚠️ 文件名属于元数据,不是数据内容。
-
同一分区、同一路径,不能同时有两个同名文件
-
写程序、脚本查找文件时,我们就是靠完整路径定位文件,日常可以认为:路径唯一对应文件。
-
无论是 Windows 还是 Linux,我们登录成功,都会默认处在一个默认的路径下!
-
文件(File)的概念
一、广义定义
文件,是存储在外部存储设备(磁盘、SSD、U 盘等)上,具有名字、被操作系统统一管理的一组相关信息的有序集合。 可以是文本、图片、程序、视频,也可以是设备抽象(类 Unix);Windows 中,文件夹本质也是一种特殊文件(目录文件)。
核心:把一堆数据打包,赋予名字,交给文件系统管理,方便程序和用户读写。
二、文件的两大组成部分
-
文件内容(数据区) 真正存的东西:文字、图像、二进制代码等,是文件承载的有效数据。
-
文件元数据(属性 / 描述信息) 不包含业务数据,用来描述文件本身:文件名、大小、创建时间、修改时间、权限、位置、MFT 记录号(Windows NTFS)/ inode(Linux)。
Linux 系统当中,可以存在隐藏文件,隐藏文件通常是以 . 开头
Linux 系统当中,一个 .,通常表示当前路径,两个 .,通常表示上级路径
1. 文件的本质
文件 = 文件内容 + 文件属性(元数据) 文件属性本身也占用磁盘空间,不只是里面存放的数据。 Linux 中文件后缀名只是给人看的,系统不依靠后缀判断文件类型。
2. Linux 文件系统结构:树形结构
-
最顶层是根目录/,所有目录、文件都挂载在根下,不能再往上追溯。
-
节点分为两类:
-
叶子节点:普通文件、空文件夹
-
非叶子节点:目录(文件夹),用来承载其他文件 / 目录
-
-
特殊目录:.代表当前目录,..代表上级目录,任何目录里都默认隐藏存在这两项。
3. 路径相关重点(考试高频)
绝对路径:从根/出发,唯一标识文件,永远具备唯一性。配置文件场景优先用绝对路径。
相对路径:以当前工作目录为参照,当前目录一变,相对路径含义就变,不能保证唯一性;日常操作一般用相对路径。
板书观点:在操作系统上层,通过路径标识文件唯一性(多个路径可硬链接指向同一个底层文件实体,这里讲的是用户 / 程序访问层面)
| 定义 | 从根目录 / 出发,完整描述文件位置的路径 | 以当前工作目录为参照,描述文件位置的路径 |
| 起始点 | 根目录 / | 当前工作目录 |
| 唯一性 | 永远具备唯一性 | 不能保证唯一性,随当前目录变化而变化 |
| 使用场景 | 配置文件、脚本、系统服务等需要稳定定位文件的场景 | 日常命令行操作、项目内相对引用等场景 |
| Linux 示例 | /home/cl/demo.txt | ./demo.txt 或 ../demo.txt |
4. 程序执行的前提
执行程序时,操作系统需要通过路径找到这个可执行文件;直接输入 my.exe 找不到,./my.exe 代表执行当前目录下的 my.exe。
5. Windows 和 Linux 对比
-
Windows:上层依靠路径定位文件;底层 NTFS 使用 MFT 记录号。
-
Linux:同样树形目录,.和..内置在每个目录。
三、小补充要点
登录系统默认会处在用户的家目录,root 用户家目录是 /root,普通用户比如 cl 是 /home/cl
终止卡死命令快捷键:Ctrl + C
目录也是一种特殊文件。
核心要点总结
- touch 命令:用于更改文件或目录的日期时间(存取时间、更改时间),也可新建不存在的文件;常用选项 -a 只改访问时间、-c 只改修改时间。
- 文件组成:文件 = 文件内容(数据区)+ 文件属性(元数据);元数据本身也占用磁盘空间,文件名属于元数据而非数据内容。
- 路径类型:绝对路径从根 / 出发,永远具备唯一性,适合配置文件等稳定场景;相对路径以当前工作目录为参照,不能保证唯一性,适合日常操作。
- 隐藏文件:Linux 中隐藏文件通常以 . 开头;一个 . 表示当前路径,两个 .. 表示上级路径。
- 文件系统结构:Linux 采用树形结构,最顶层是根目录 /;目录是承载其他文件 / 目录的非叶子节点,也是一种特殊文件。
- 程序执行:执行程序时操作系统通过路径定位可执行文件,直接输入 my.exe 找不到,./my.exe 表示执行当前目录下的文件。
网硕互联帮助中心


评论前必须登录!
注册