news 2026/9/12 23:38:47

目录与文件管理0825

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
目录与文件管理0825

Linux与Windows的文件系统组织方式存在本质区别,Linux采用单一的树形目录结构,所有分区,文件目录均以根目录(/)为唯一起点,根目录所在的分区称为根分区,而Windows为每个磁盘分区设置独立的根目录(如C:\,D:\)

一、OpenEuler 24.03目录结构

1.1 核心系统目录及功能详解

根目录下的核心子目录各有明确用途,掌握其功能能快速定位系统文件,配置文件和用户数据,以下为openEuler 24.03中最常用的核心目录及详细说明:

目录路径

英文全称/释义

核心功能

实用场景

/boot

Boot

存放系统内核、启动配置文件、启动加载器(grub2)等启动必需文件

系统启动故障时,可在此目录排查内核或启动配置问题;OpenEuler安装时建议为其创建独立分区(约1GB),适配内核镜像的存储需求,便于系统备份与恢复

/bin

Binary

存放所有用户(普通用户+管理员)均

存放所有用户(普通用户+管理员)均可执行的常用基础命令,如1s(查看目录)、cp(复制)、mv(移动)、cat(查看文件)等

日常基础操作的命令均来自此目录,OpenEuler系

日常基础操作的命令均来自此目录,OpenEuler系统默认将其加入环境变量,任意目录下可直接执行

/dev

Device

存放 Linux系统的设备文件,Linux中所有硬件(硬盘、光驱、网卡等)均以文件形式在此体现

访问硬件需通过此目录,如/dev/cdrom(光驱)、/dev/vda(云环境第一块虚拟硬盘)、/dev/tty1(第一虚拟终端),适配OpenEuler物理机与云主机的硬件识别特性

/etc

Etcetera

存放系统核心配置文件,包含用户账号

存放系统核心配置文件,包含用户账号配置、服务启动配置、网络配置、软件配置等

管理 OpenEuler系统的核心操作均围绕此目录,如/etc/passwd(用户账号)/etc/NetworkManager(网络配置)/etc/dnf/dnf.conf(dnf源配置)

/home

Home

普通用户的宿主目录(家目录),每个

普通用户的宿主目录(家目录),每个普通用户在/home 下有独立的子目录(如 用 户 teacher 对 应/home/teacher),用户对自身家目录拥有完全操作权限

普通用户的个人文件、数据、配置均存放在此;若

普通用户的个人文件、数据、配置均存放在此;若OpenEuler服务器有大量普通用户,建议为/home创建独立分区,方便用户数据备份与隔离

/root

Root

系统管理员(超级用户root)的宿主目录

区别于普通用户,root的家目录直接在根目录下,而非/home; root对该目录拥有最高权限,存放OpenEuler管理员的个人数据和系统管理配置

/sbin

Super

SuperuserBinary

存放系统管理专用命令,仅管理员(root)有权限执行,如fdisk(磁盘分区)、ip(网络配置)、reboot(重启系统)等

OpenEuler 系统维护、管理、故障排查的高级命令,普通用户无执行权限,需通过sudo提权或切换至root 用户执行

/usrUnix SystemResources存放系统的应用程序和资源文件,是OpenEuler 系统中最大的目录之一,内部又分/usr/binn(用户应用命令)、/usr/lib(程序库文件)、/usr/share(共享资源)等子目录

OpenEuler 中安装的第三方软件、系统自带的非基

OpenEuler中安装的第三方软件、系统自带的非基础应用程序均存放在此,如/usr/local(手动安装的软件默认路径),适配openEuler 的软件安装规范

/varVariable存放大小动态变化的文件,即"可变文件"核心用于存储日志文件(/var/log)、打印缓存(/var/spool)、容器数据(/var/lib/docker)等,OpenEuler系统运行中该目录的文件大小会持续变化,是日常排查系统、容器服务问题的重要目录

1.2 目录结构的设计逻辑

OpenEuler 24.03的目录结构在遵循Linux通用的功能分类、权限隔离设计原则基础上,结合自身云原生,国产化适配的特性做了优化,核心原则如下:

1.功能分类:将启动、配置、设备、应用、用户数据、容器资源等功能拆分至不同目录,便于快速定位和管理,如所有配置文件集中在/etc,所有日志文件集中在/var/log,容器相关数据集中在/var/lib/docker:

2.权限隔离:通过目录权限区分普通用户和管理员操作范围,如/bin(所有用户可执行)、/sbin(仅管理员可执行)、/home(普通用户隔离),同时适配OpenEuler的用户权限管理机制,保障系统安全性;

3.云原生适配:目录结构兼顾物理机、虚拟机、云主机的使用场景,对设备识别、资源存储目录做了兼容性设计,满足云环境下的系统管理需求。

二、查看及检索文件内容

2.1 基础文件查看命令

2.1.1cat命令:快速查看小文件完整内容



• ​cat:快速查看小文件完整内容,适合一屏内可显示的文件。

• ​more/less:分页查看大文件内容,less支持上下翻页和关键词检索,是首选工具。

• ​head/tail:查看文件指定行内容,head查看开头,tail查看末尾,tail -f用于实时监控日志。

2.1.2 more/less命令:分页查看大文件内容

命令作用:针对内容超过一屏的大文件,采用全屏分页方式逐行/逐屏阅读,是查看大文件的核心工具。

more:基础分页命令,功能简单(新版已与 less 功能一致);

less:增强版分页命令,兼容more的所有功能。支持上下翻页、关键词检索,是OpenEuler实际使用中首选的分页查看命令。

基本格式:more [文件路径] / less [文件路径]

快捷键功能
Enter向下逐行滚动
Space向下翻一整屏
/文本在文件中检索指定关键词,高亮显示匹配结果
q退出分页界面,返回命令行

专属快捷键:less命令支持b键使用,能够向上翻一整屏,但more没有此功能

2.1.3 head / tail 命令:查看文件指定行内容

命令作用:一对功能相反的命令,查看文件开头或末尾的指定行数内容,默认各显示前后 10 行,可通过选项自定义行数。

基本格式:head [-n 行数] 文件路径(-n 可省略,如 head -5 文件名);tail [-n 行数] 文件路径 / tail -f 文件路径(-f 为核心选项,实时跟踪文件末尾)

适用场景:head 查看文件头部信息(配置开头注释、文件格式);tail 查看最新尾部信息,-f 专用于实时监控系统/服务日志。

2.2 高级内容检索与统计


2.2.1:​grep:精准检索文件中的关键词

命令作用:Linux 中最强大的文本检索工具,支持精准匹配、模糊匹配、正则表达式匹配,可过滤无效信息、快速定位关键内容。

基本格式:grep [选项] "查找条件" 目标文件

核心选项(可组合使用,如 grep -iv“关键词”文件名):

选项英文释义功能
-iIgnore Case检索时忽略大小写,可匹配 OpenEuler、OPENEULER、openeuler 等
-vInvert反转检索,显示不包含条件的行,用于过滤无效信息(注释、空行)
-wWord精准匹配单词,仅匹配完整单词(如 -w "ftp" 不匹配 ftpd、ftpuser)

^关键词:匹配以关键词开头的行(^ 表示行首)

关键词$:匹配以关键词结尾的行($ 表示行尾)

^$:匹配空行

^#:匹配以 # 开头的行(Linux 中 # 为注释符号,用于过滤注释行)

例如在实际操作中:

# grep -v “^#” /etc/ssh/sshd_config | grep -v “^&”

此命令意为不显示#开头的行和不显示空白行

“”里写的意为正则表达式

此命令即可不显示#开头的行(被注释的无用行)以及空白行(没有任何信息)。

2.3 备案与恢复文档

2.3.1 常用压缩/解压缩工具:gzip & bzip2

gzip 和bzip2是OpenEuler 24.03中最常用的轻量级压缩工具,仅针对单个文件进行压缩(无法直接压缩目录),两者使用方法基本一致,核心区别在于压缩算法和压缩比:

gzip:采用DEFLATE压缩算法,速度快,占比中等,压缩文件后缀为.gz:

bzip2:用Burrows-Wheller压缩算法,压缩速度稍慢,压缩比更高,后缀为.bz2

2.3.2 归档与恢复核心工具:tar

选择类型选项功能说明
功能选项(必选,三选一)-cCreate创建新的 tar 归档文件,用于备份(打包)
-xExtract解开 tar 归档文件,用于恢复(解压)
-tList查看 tar 归档文件中的内容,不解压
辅助选项(可选,按需组合)-fFile指定归档文件的名称,必须放在所有选项的最后
-zGzip调用 gzip 进行压缩/解压缩,对应 .tar.gz
-jBzip2调用 bzip2 进行压缩/解压缩,对应 .tar.bz2
-vVerbose显示操作的详细过程,便于查看进度
-cDirectory解压时指定文件的释放目录(仅用于 -x)
-pPermission打包时保留文件/目录的原始权限(备份系统配置时重要)

三、vi文本编辑器

3.1 vi编辑器的安装

OpenEuler24.03默认预装vim增强版编辑器,将vi指向vim,输入vi即可启动vim。通过dnf命令快速安装。

# 1. 若未预装 vim,通过 dnf 安装(OpenEuler 24.03 默认预装,此步骤可选)

[root@localhost ~]# dnf install -y vim

# 2. 设置别名,将 vi 指向 vim(临时生效,重启终端后失效)

[root@localhost ~]# alias vi='/usr/bin/vim'

# 3. 验证别名设置

[root@localhost ~]# which -a vi vim

alias vi='/usr/bin/vim'

/usr/bin/vim

3.2 vi编辑器的三种工作模式及切换

工作模式启动方式核心功能状态提示
命令模式(Command Mode)启动 vi 后默认进入;输入模式/末行模式按 Esc 键返回光标移动、字符删除、行删除/复制/粘贴、关键词查找、模式切换等基础编辑操作无任何提示,屏幕底部为空白
输入模式(Insert Mode)命令模式下按 a/i/o/A/I/O 等键进入唯一可录入/修改文本内容的模式,实现文件编辑屏幕底部显示 -- INSERT --
末行模式(Last Line Mode)命令模式下按冒号(:)进入保存文件、退出编辑器、查找替换、行号显示、打开新文件等高级操作屏幕底部显示冒号(:)提示符

模式切换核心原则:所有模式均可通过 Esc 键返回命令模式,再从命令模式切换到其他模式,避免直接在输入模式和末行模式间切换(易出错)。

快速记忆:

想编辑文字:命令模式 → 按 i/a/o → 输入模式

想保存/退出/替换:命令模式 → 按 : → 末行模式

想切换模式/取消操作:任意模式 → 按 Esc → 命令模式

3.2.1 命令模式:基础编辑操作

命令模式是 vi 的核心模式,所有模式切换均以命令模式为中转,同时包含最常用的基础编辑操作(光标移动、删除、复制、粘贴、查找等)。

四、关键词查找与撤销的操作

4.1 关键词查找:

快速检索文件中的指定关键词,高亮显示匹配结果,适合在大配置文件/日志文件中定位内容。

按键功能后续操作
/关键词从光标位置向后查找指定关键词按 n 跳转到下一个匹配,按 N 跳转到上一个匹配
?关键词从光标位置向前查找指定关键词按 n 跳转到上一个匹配,按 N 跳转到下一个匹配

4.2 撤销操作:

对失误的编辑操作进行撤销,恢复文件原始内容,是避免误修改系统配置文件的核心功能。

按键功能适用场景
u撤销最近一次的编辑操作,可多次按 u 撤销多步误删除、误修改后快速撤销(最常用)
U撤销对当前行所做的所有编辑操作某一行多次修改后,一键恢复该行原始内容
crtl+r反撤销,恢复被 u 撤销的操作撤销后发现操作正确,需要恢复原有配置

五、快速保存并退出

5.1 保存文件与退出编辑器 {核心}

末行命令功能适用场景
:w保存当前文件的修改,不退出编辑器编辑过程中定期保存,防止意外退出丢失内容
:w 新文件名将当前文件另存为新文件,不退出编辑器保留原始配置文件,修改内容另存便于对比
:q退出 vi 编辑器文件未做任何修改,直接退出
:q!强行退出,不保存任何修改编辑出错,放弃所有修改恢复原始状态(最常用)
:wq保存文件的所有修改,然后退出编辑器编辑完成,保存并退出(与 ZZ 功能一致)
:x保存修改并退出编辑器与 :wq 区别:文件未修改时 :x 不更新修改时间,:wq 会更新

5.2 打开新文件与读入其他文件内容

(1)打开新文件:末行命令 :e 新文件路径(e 为 Edit 的缩写),在当前 vi 编辑器中直接打开其他文件,无需退出重新启动。

# wc /etc/hosts

7 40 384 /etc/hosts

这几个数字为行数、单词数和字节数

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/12 23:38:09

海康videowebplugin插件失效原因与实战排障指南

简介:ActiveX插件是传统安防视频调阅的核心技术组件,其本质是基于IE内核的私有协议封装方案,依赖Windows系统、DirectX硬件解码与COM组件注册机制。随着现代浏览器逐步淘汰ActiveX支持,该技术面临兼容性断层,典型表现为…

作者头像 李华
网站建设 2026/9/2 13:38:55

Spark 4.x Variant深入解析:半结构化数据处理的灵活与高效

在近期的 Spark 技术调研里,我发现讨论最多、也最容易让人误解的新特性就是 Spark 4.x 中的 Variant 类型。很多读者问:Variant 是不是就是“升级版 JSON”?它的性能真的比原来好很多吗?项目里到底什么时候该换,什么时…

作者头像 李华
网站建设 2026/9/2 8:18:28

Vibe Coding一人即团队系列12: 提示词的四类编写范式与结构化实践

纲要 普通自然语言提示词 角色与背景定义目标与诉求描述输出格式约束 Markdown 格式提示词 标题层级与粗体标记段落化组织方式大模型的结构化偏好 优雅风格化提示词 方括号标记法编号与列表规范可维护性与团队协作 XML/HTML 标签格式提示词 起始标签与结束标签标签嵌套机制自定…

作者头像 李华
网站建设 2026/9/2 11:56:28

GitHub周榜的正确打开方式:从筛选到跑通,把收藏变成工作流

GitHub 周榜(2026-08 Week 4)这几天又出现在了很多人信息流里,但我想先泼一点冷水:每周追热门仓库的人,未必真的从里面拿到了价值。榜单最大的作用不是让你多收藏几个项目,而是帮你用最少的时间完成一次筛选…

作者头像 李华
网站建设 2026/9/2 10:09:41

AI Agent 自我进化实战:让智能体从经验里持续成长的工程闭环

会记住 ≠ 会成长。记忆只是把东西存下来,自我进化是把存下来的东西变成下次更好的自己——这篇拆的,是那条让 Agent 越用越聪明的闭环。很多人把「给 Agent 加记忆」和「让 Agent 自我进化」当成一回事,这俩其实是两件事。记忆解决的是状态留…

作者头像 李华
网站建设 2026/9/2 7:47:49

ICM-42686 IMU原始数据处理:从寄存器值到物理量的完整换算指南

1. 从原始数据到物理量:ICM-42686数据处理的起点 拿到一个IMU传感器,比如InvenSense的ICM-42686,第一件事往往就是读取它的原始数据。但寄存器里读出来的那一串数字,比如加速度计的 0x03, 0xE8 或者陀螺仪的 0xFF, 0x9C &…

作者头像 李华