一.7种文件类型
注意:Linux系统文件名的后缀只是为了方便用户识别文件类型
Linux系统设计哲学:一切皆文件
1.使用 “ls -l” 命令查看到的第一个字符,对应不同文件类型及说明如下:
①“-”:普通文件,类似于 Windows 的记事本。
②“d”:目录文件,类似于 Windows 文件夹。
③“c”:字符设备文件,串行端口设备,顺序读写,如键盘。
④“b”:块设备文件,可供存储的接口设备,随机读写,如硬盘。
⑤“p”:管道文件,用于一台主机上进程间的通信。
⑥“s”:套接字文件,用于实现不同主机上进程之间的通信 。
⑦“|”:符号链接又叫软链接,和原文件不是一个文件。一个指向其他文件或文件夹的 “快捷方式”。例如 Windows 的快捷方式,如果原始文件被删除,所有指向它的符号链接也就都被破坏了。软链接有自己的 inode,是 Linux 特殊文件的一种,作为一个文件,它的数据是它所连接的文件的路径。符号链接可以跨越文件系统,也可以为目录建立。
⑧硬链接:只能引用同一文件系统中的文件。文件的另一个 “名字” 或者 “入口”。它引用的是文件在文件系统中的物理索引(也称为 inode)。当移动或者删除原始文件时,硬链接不会被破坏,因为它所引用的是文件的物理数据而不是文件在件结构中的位置。
☛硬链接和软链接的区别如下:
- 硬链接:同一文件的不同名字,源文件删了不影响访问,不能跨文件系统,一般不能对目录创建。
- 软链接:类似文件快捷方式,源文件删了就失效,可跨文件系统,能对文件或目录创建。
☛find指令(均从根目录开始查找,按不同类型筛选)
[root@localhost ~]#find / - type(s,b,c,|,f,)
f:表示查找的类型为普通文件,日常的文本文件,二进制可执行文件等都属于普通文件
二.linux如何管理7种文件类型
1.Linux目录结构的特点:
①使用树形目录结构来组织和管理文件。
② 整个系统只有一个根目录(/)
③除根目录所在分区外,其他所有分区以及硬盘、光驱等外部设备,均以目录为起点,挂载在目录树的某个目录下。访问挂载点目录,就能访问这些分区。
2. 系统目录
① /:根目录,是整个文件系统的顶级目录
② /root:超级用户 (root) 的家目录,登录 root 时默认所在目录,可用 "~" 代表
③ /home:普通用户家目录所在位置,如 /home/redhat 即 redhat 用户家目录
④ /bin:存放基本可执行命令,所有用户可执行部分命令
⑤ /sbin:存放系统管理相关可执行命令,一般只有 root 能执行
⑥ /etc:存储系统各种配置文件
⑦ /var:存放经常变化的数据,如日志,/var/log/message
⑧ /usr/bin:存放大量非系统基本可执行命令,普通用户可执行部分
⑨ /usr/sbin:存放系统管理相关非基本可执行程序,常需 root 权限执行
3. 设备文件目录
/dev:存放设备类型文件,如 /dev/sr0,/dev/cdrom 是光盘设备文件,/dev/sda,/dev/sda1,/dev/nvme0n1,/dev/nvme0n1p1,/dev/nvme0n1p2 是硬盘设备文件
4. 挂载目录
/mnt:用于挂载外部设备 (如硬盘、U 盘、光盘) 的目录

5. 系统配置文件
① /etc/shells:记录系统合法的 shell 列表
② /etc/passwd:存储系统用户基本信息
③ /etc/shadow:存储用户密码等敏感信息,仅 root 可读取
④ /etc/fstab:设置开机自动挂载的文件系统信息
⑤ /etc/redhat-release:记录基于 RedHat 发行版本的操作系统版本
⑥ /etc/hostname:存储主机的名称
6.程序路径
① /usr/bin/ls:ls 程序的存放路径,用于列出文件和目录信息。
② /usr/bin/touch:touch 程序路径,用于创建新文件或更新文件时间戳。
③ /usr/bin/passwd:passwd 程序路径,用于修改用户密码。
④ /usr/sbin/poweroff:poweroff 程序路径,用于关闭系统。
三.Linux 命令基础入门要点
1.命令格式包括:主命令,选项,参数(操作对象)
2.命令分为两类
① 内置命令(builtin):由 shell 程序自带的命令
② 外部命令:有独立的可执行程序文件,文件名即命令名
3.选项:指定命令的运行特性,指明要运行命令中的哪一个功能代码。
(1) 短选项:eg:-l,-d,如果同一命令同时使用多个短选项,参数可合并(注!!!有些命令的选项没有 -)
(2) 长选项:eg:--help,--human-readable
4. 参数:命令的作用对象,即命令对什么生效
①不同的命令的参数不同。
②有些选项可以带参数,有些选项可以不带参数
③有些命令可同时带多个参数,多个参数之间以空白字符分隔