Linux 文件管理与归档压缩实战指南:从入门到精通
本文涵盖了 Linux 文件管理的核心知识点:从目录结构与路径基础,到文件 / 目录的创建、删除、复制、移动,再到文件内容查看和归档压缩,所有命令均提供实战案例,适合初学者直接上手操作。重点记忆Linux 单根目录结构,核心目录(/etc、/home、/var 等)的功能;绝对路径与相对路径的区别,cdpwd命令的使用;rm -rf的风险,cp -rmv的常用场景;tar 命令的参数组合(cvf/
在 Linux 系统学习和运维过程中,文件管理是最基础也是最核心的技能之一。无论是目录导航、文件创建删除,还是数据归档压缩,熟练掌握相关命令和技巧能极大提升工作效率。本文将从 Linux 目录结构、路径概念入手,详细讲解文件管理、文件查看、归档压缩的实用命令与实战案例,适合 Linux 初学者快速上手。
一、Linux 系统目录结构与路径基础
1.1 目录结构特点
与 Windows 系统的多盘符(C:\、D:\)结构不同,Linux 系统只有一个根目录(/),所有文件、目录和设备都挂载在根目录之下,形成树形结构。
可通过tree命令查看目录结构(若未安装,执行yum install tree -y安装),例如查看/tmp目录结构:
shell
[root@centosTest ~]# tree /tmp/
1.2 核心目录功能说明
| 目录 | 核心功能描述 |
|---|---|
| / | 系统根目录,所有文件和目录的起点 |
| /bin | 存放常用二进制命令(如 ls、cp、mkdir),普通用户和管理员均可使用 |
| /boot | 系统启动相关文件(如内核、grub 引导程序) |
| /dev | 设备文件目录(如磁盘 /dev/sda、终端 /dev/tty1),Linux 中 "一切皆文件" |
| /etc | 系统配置文件目录(如用户信息 /etc/passwd、密码文件 /etc/shadow) |
| /home | 普通用户家目录默认存放位置(如用户 user1 的家目录为 /home/user1) |
| /lib/lib64 | 系统共享库文件目录,类似 Windows 的 DLL 文件,支撑应用程序运行 |
| /mnt/media | 临时挂载目录(如 U 盘、光盘),建议将外部存储设备挂载至此 |
| /opt | 第三方软件安装目录(如 GitLab、Tomcat 等) |
| /proc | 虚拟目录,映射系统内存信息(如 CPU 信息 /proc/cpuinfo),内容不存储在硬盘 |
| /sbin | 管理员专用命令目录(如系统启停、磁盘管理命令),普通用户无执行权限 |
| /tmp | 临时文件目录,系统定期清理未使用文件,不可存放重要数据(含粘滞位保护) |
| /var | 动态文件目录(如日志 /var/log、邮件、定时任务文件) |
| /usr | 应用程序存放目录(/usr/bin 普通用户程序、/usr/sbin 管理员程序) |
1.3 绝对路径与相对路径
路径是定位文件 / 目录位置的方式,Linux 中分为两种:
- 绝对路径:从根目录(/)开始的完整路径,例如
/etc/passwd、/home/user1/a.txt,无论当前所在目录,绝对路径都能准确定位文件。 - 相对路径:从当前目录开始的路径,无需以 / 开头,例如:
- 当前在
/etc目录,访问passwd文件可直接写passwd或./passwd(./ 表示当前目录) - 当前在
/home目录,访问/root/b.txt可写../root/b.txt(../ 表示上一级目录)
- 当前在
通过pwd命令可查看当前所在目录的绝对路径:
shell
[root@centosTest etc]# pwd
/etc
二、Linux 文件管理核心命令
文件管理主要包括目录切换、文件 / 目录创建、删除、复制、移动等操作,以下是高频命令实战。
2.1 目录切换:cd 命令
cd(change directory)用于切换工作目录,常用用法:
shell
cd /etc # 切换到/etc目录(绝对路径)
cd ../opt # 切换到上一级目录的opt子目录(相对路径)
cd ~ # 切换到当前用户家目录(root用户为/root,普通用户为/home/用户名)
cd - # 切换到上一次所在目录
2.2 文件创建:touch、vim 与重定向
(1)touch 命令
用于创建空文件或修改文件时间戳(文件已存在时更新时间):
shell
touch a.txt # 创建单个空文件
touch file1 file2 # 同时创建多个文件
touch file{6..20} # 批量创建file6到file20的文件
(2)vim 命令
文本编辑器创建文件(适合创建需直接编辑内容的文件):
shell
vim test-1.txt # 进入vim编辑界面,按i开始编辑,Esc+:+wq保存退出
(3)重定向创建文件
通过>重定向符号快速创建文件并写入内容:
shell
echo "Hello Linux" > test.txt # 创建test.txt并写入字符串
2.3 目录创建:mkdir 命令
mkdir(make directory)用于创建目录,核心参数-p(递归创建多级目录):
shell
mkdir dir1 # 创建单个目录
mkdir dir2 dir3 /home/dir4 # 同时创建多个目录(支持绝对路径)
mkdir -p /tmp/a/b/c # 递归创建多级目录(父目录不存在时自动创建)
2.4 文件 / 目录删除:rm 命令
rm(remove)用于删除文件或目录,慎用! 核心参数:
-f:强制删除,无提示-r:递归删除目录(含目录下所有文件和子目录)
shell
rm -f a.txt # 强制删除单个文件
rm -rf dir1 # 强制删除dir1目录及其中所有内容
rm -rf file* # 强制删除所有以file开头的文件/目录
警告:
rm -rf /会删除系统所有文件,导致系统崩溃,切勿执行!
2.5 文件 / 目录复制:cp 命令
cp(copy)用于复制文件或目录,核心参数-R/r(递归复制目录):
shell
cp /etc/passwd /opt/ # 复制文件到/opt目录
cp -r /boot/grub2 /opt/ # 递归复制目录到/opt目录
cp -r /boot/grub2 /etc/passwd /opt # 同时复制多个文件/目录到/opt
\cp -r /boot/grub2 /opt # 覆盖文件时无提示(\取消cp的别名默认提示)
2.6 文件 / 目录移动:mv 命令
mv(move)用于移动文件 / 目录,还可实现重命名功能:
shell
mv passwd bbbpasswd # 重命名文件(当前目录下)
mv bbbpasswd /opt/ # 移动文件到/opt目录(同时可重命名)
mv dir1 /tmp/ # 移动目录到/tmp目录
注意:Linux 系统不以后缀名判断文件类型,且严格区分大小写(如 a.txt 和 A.txt 是两个不同文件)。
三、Linux 文件内容查看命令
日常运维中常需查看文件内容,以下是 5 个高频命令及适用场景:
3.1 cat 命令:快速查看完整文件
适合查看小文件,一次性显示所有内容:
shell
cat /etc/passwd # 查看用户信息文件
cat /proc/cpuinfo # 查看CPU信息
3.2 more 命令:分页查看大文件
适合查看大文件,支持分页浏览:
- 回车:向下翻一行
- 空格:向下翻一屏
- q:退出查看
shell
cat /proc/cpuinfo | more # 管道符结合more分页查看
more /var/log/secure # 分页查看系统安全日志
3.3 less 命令:增强版分页查看
功能与 more 类似,支持前后翻滚(更推荐使用):
- PageUp:向上翻一屏
- PageDown:向下翻一屏
- 上下箭头:逐行滚动
- q:退出查看
shell
less /var/log/messages # 查看系统日志(支持前后翻页)
3.4 head 命令:查看文件开头
默认显示文件前 10 行,通过-n指定行数:
shell
head /etc/passwd # 显示前10行
head -n 3 /etc/passwd # 显示前3行
3.5 tail 命令:查看文件尾部
默认显示文件后 10 行,核心参数-f(动态跟踪文件更新):
shell
tail /var/log/secure # 显示日志最后10行
tail -n 5 /var/log/secure # 显示最后5行
tail -f /var/log/secure # 动态跟踪日志(实时查看新添加的内容,如登录记录)
实战场景:在一个终端执行
tail -f /var/log/secure,另一个终端通过 SSH 登录,可实时看到登录日志。
四、tar 命令:文件归档与压缩
归档(打包)是将多个文件 / 目录合并为一个文件,压缩是减小文件体积,tar 命令可同时实现归档和压缩,是 Linux 中最常用的备份工具。
4.1 核心参数说明
tar 命令参数无需加-(可加可不加),常用组合:
| 参数组合 | 功能描述 |
|---|---|
| cvf | 归档文件(仅打包,不压缩) |
| tvf | 查看归档 / 压缩包内容(不解包) |
| xvf | 解压归档 / 压缩包 |
| czvf | 归档并通过 gzip 压缩(.tar.gz) |
| cjvf | 归档并通过 bzip2 压缩(.tar.bz2) |
| cJvf | 归档并通过 xz 压缩(.tar.xz) |
4.2 基础归档操作(仅打包)
shell
# 归档/boot/grub2目录为grub.tar(仅打包,不压缩)
tar cvf grub.tar /boot/grub2/
# 查看压缩包内容(不解压)
tar tvf grub.tar
# 解压归档包到当前目录
tar xvf grub.tar
# 归档多个文件/目录,并解压到指定目录(-C指定解压路径)
tar cvf all.tar /boot/grub2/ /etc/passwd
tar xvf all.tar -C /opt/ # 解压到/opt目录
4.3 归档 + 压缩操作(三种压缩格式)
(1)gzip 压缩(.tar.gz,最常用)
压缩速度较快,压缩比适中:
shell
# 归档并压缩/etc目录为etc.tar.gz
tar czvf etc.tar.gz /etc
# 解压到当前目录
tar xzvf etc.tar.gz
(2)bzip2 压缩(.tar.bz2)
压缩比优于 gzip,速度稍慢:
shell
# 归档并压缩/etc目录为etc.tar.bz2
tar cjvf etc.tar.bz2 /etc
# 解压到当前目录
tar xjvf etc.tar.bz2
(3)xz 压缩(.tar.xz)
压缩比最高,速度最慢:
shell
# 归档并压缩/etc目录为etc.tar.xz
tar cJvf etc.tar.xz /etc
# 解压到当前目录(可省略J参数,tar自动识别)
tar xvf etc.tar.xz
4.4 三种压缩格式对比
| 压缩格式 | 后缀名 | 压缩比 | 压缩速度 | 适用场景 |
|---|---|---|---|---|
| gzip | .tar.gz | 中等 | 较快 | 日常备份(平衡速度和体积) |
| bzip2 | .tar.bz2 | 较高 | 中等 | 对速度要求不高的备份 |
| xz | .tar.xz | 最高 | 较慢 | 追求最小体积(如分发文件) |
4.5 高级用法
(1)解压指定文件到指定目录
shell
# 从boot.tar.gz中解压grub.cfg到/opt目录
tar -C /opt -xvf boot.tar.gz boot/grub2/grub.cfg
(2)解压特定类型文件
shell
# 解压压缩包中所有.lst后缀的文件到/opt目录
tar -C /opt -xvf boot.tar.gz --wildcards *.lst
(3)排除指定文件 / 目录压缩
shell
# 压缩/boot/grub2,排除i386-pc目录
tar czvf boot.tar.gz /boot/grub2 --exclude=boot/grub2/i386-pc
五、zip 命令:轻量压缩工具
zip 是另一种常用的压缩工具,压缩和解压命令分别为zip和unzip,操作更简洁。
5.1 压缩文件 / 目录
shell
# 压缩单个文件
zip a.zip /etc/passwd
# 压缩所有.jpg后缀的文件为all.zip
touch {1..4}.jpg # 先创建4个jpg文件
zip all.zip *.jpg
# 压缩目录(-r递归压缩)
zip -r dir.zip /opt/dir1
5.2 解压文件
shell
# 解压到当前目录
unzip a.zip
# 解压到指定目录(-d指定路径)
unzip dir.zip -d /tmp/
总结
本文涵盖了 Linux 文件管理的核心知识点:从目录结构与路径基础,到文件 / 目录的创建、删除、复制、移动,再到文件内容查看和归档压缩,所有命令均提供实战案例,适合初学者直接上手操作。
重点记忆:
- Linux 单根目录结构,核心目录(/etc、/home、/var 等)的功能;
- 绝对路径与相对路径的区别,
cd、pwd命令的使用; rm -rf的风险,cp -r、mv的常用场景;- tar 命令的参数组合(cvf/xvf/czvf),三种压缩格式的选择;
- tail -f 动态查看日志的实战用法。
熟练掌握这些命令后,可应对日常 Linux 运维中的大部分文件管理场景。建议多动手实践,通过反复操作加深记忆!
更多推荐

所有评论(0)