Linux的文件系统与常用命令
在上一篇教程中,我们已经成功安装好 CentOS 虚拟机,并能通过 MobaXterm 远程连接。本文将通过大量实际操作截图,手把手带你掌握 Linux 的文件系统、目录含义以及最常用的基础命令,让零基础的你也能轻松上手。
一、Linux 的目录树
与 Windows 有 C、D 盘不同,Linux 只有一个根目录,写作 /,所有文件都挂载在这个根下,形成一棵倒置的树。
我们先打开终端,用 pwd 看看当前在哪,然后用 ls / 查看根目录下有哪些“大树杈”。
pwd # 显示当前路径,刚登录通常在家目录 /root
ls / # 列出根目录下的文件和文件夹
执行后你会看到类似下面的界面:
每个目录都有特定用途,了解这几个最常见的:
/bin– 存放常用基本命令(如ls,cp,mv等),普通用户也能使用。/etc– 系统的配置文件所在地,几乎所有软件设置都在这里。/home– 普通用户的家目录,类似于 Windows 的C:\Users。/root– 超级管理员 root 的家目录,和普通用户隔离以保证安全。/var– 存放经常变化的数据,比如日志文件、数据库等。/tmp– 临时文件存放点,重启后通常会被清空。
为什么这样设计? 这种树状结构让文件管理非常清晰,权限控制也更方便。例如,把可执行文件集中在 /bin,系统就知道去哪里找命令;把配置统一放在 /etc,备份或迁移设置时也很方便。
二、基础命令:文件的创建、查看与删改
接下来我们进入正题,从动手操作中学习最常用的命令。
1. 先建个练习目录
为了避免弄乱系统,我们回到 root 家目录,创建一个专属练习文件夹。
cd /root # 回到 root 的家
mkdir mylinux # 创建名为 mylinux 的目录
cd mylinux # 进入该目录
pwd

命令解释:
mkdir即“make directory”,用于创建文件夹。cd用来切换工作目录,..可退回上一级。
2. 用 touch 生成文件,ls / ll 查看清单
现在我们在 mylinux 目录里生成两个空文件,然后看看它们的样子。
touch hello.txt # 创建一个名为 hello.txt 的空文件
touch test.log # 再建一个测试文件
ls # 简单列出文件名

你可能会好奇,ls 显示的信息太少,有没有更详细的?当然有,试试 ls -l,通常它的别名就是 ll(如果系统没定义,可以自己加:alias ll='ls -l')。
ll # 等价于 ls -l,显示详细信息

输出格式解读(这是重点):
-rw-r--r--. 1 root root 0 Aug 5 10:00 hello.txt
从左边起:
-rw-r--r--:文件类型与权限。第一个字符-表示普通文件(d表示目录)。后面九个字符每三个一组,分别代表所有者、所属组、其他人的读(r)、写(w)、执行(x)权限。1:硬链接数量,初学可忽略。root root:文件所有者和所属组。0:文件大小(字节),因为我们用touch创建的空文件,所以是 0。Aug 5 10:00:最后修改时间。
为什么初学者要懂权限? 因为 Linux 是多用户系统,权限保护着系统安全和你的隐私。你迟早会遇到“Permission denied”,学会看权限才能排查问题。
3. 移动和重命名:mv 的两种用法
mv 命令既可以移动文件,也可以重命名文件。
mv hello.txt hi.txt # 将 hello.txt 重命名为 hi.txt
mv hi.txt .. # 把 hi.txt 移动到上级目录(/root)
ls # 当前目录不再有 hi.txt
ls .. # 上级目录出现了 hi.txt
mv ../hi.txt . # 再把它移回来(. 代表当前目录)

使用技巧:如果目的路径的目录部分不变,只是文件名变了,那就是重命名;如果路径变了,就是移动。
4. 删除文件或目录:慎用 rm
删除文件用 rm,删除非空目录需要加 -r(递归删除)。
rm test.log # 删除单个文件,会直接删,没有回收站!
rm -r 目录名 # 删除目录以及其下所有内容
重要警告:Linux 命令行删除很难恢复,一定要确认清楚再回车。初学者不要在 / 或 /etc 等系统目录下随意尝试 rm -rf。
5. 查看文件内容:cat, more, less, tail
我们现在创建一个稍大点的文本文件来做演示。用 echo 结合重定向快速写入一些内容。
echo "第一行内容" > story.txt # > 覆盖写入
echo "第二行内容" >> story.txt # >> 追加写入
echo "第三行内容" >> story.txt

-
cat– 一次性将整个文件内容显示在屏幕上,适用于小文件。cat story.txt
-
more– 分页显示,按空格翻页,按q退出,适合看长文件但无法回翻。more /var/log/messages # 系统日志一般都很长可以单击空格下一页

-
less– 更强大的分页工具,支持上下箭头滚动、/搜索关键字等。less /var/log/messages按
q退出。less读文件比more灵活得多,推荐优先使用。
-
tail– 查看文件末尾几行(默认 10 行),-f参数可以实时跟踪文件新增内容,常用于看实时日志。tail -n 5 story.txt # 只看最后 5 行 tail -f /var/log/messages # 动态刷新(按 Ctrl+C 退出)
三、文本编辑初体验:vi 的基本使用
在 Linux 里,vi(或其增强版 vim)是必备编辑器,至少要学会如何进去、写点东西、保存退出。
输入 vi newfile.txt 打开一个文件(如果不存在,保存时会新建)。
vi newfile.txt
进入后是命令模式,不能直接打字。
- 按下
i键进入插入模式,左下角会出现-- INSERT --,此时可以输入文字,比如 “Hello Linux”。 - 编辑完后按
Esc退回命令模式。 - 输入
:wq并回车,保存并退出。如果不想保存,用:q!强制退出。

四、看懂并修改权限:chmod
前面 ls -l 看到的 rw-r--r-- 就是权限。权限可以用字母表示,也可以用三位数字:
r=4,w=2,x=1。- 比如
rwx= 4+2+1 = 7;rw-= 6;r--= 4。
因此 755 代表:所有者 rwx,组 r-x,其他人 r-x,这是目录的常见权限。
我们可以用 chmod 修改权限。比如让 story.txt 变为所有人都可读可写(危险,仅演示):
chmod 666 story.txt # 所有者、组、其他人都变成 rw-
ll story.txt # 验证变化

或者用字母格式:u(所有者),g(组),o(其他人),a(所有人);+ 添加权限,- 移除权限。
chmod u+x story.txt # 给所有者加上执行权限,变成 rwx

五、打包压缩必备:tar
Linux 中最常用的归档工具就是 tar,配合 gzip 压缩可以生成 .tar.gz 包。
-
打包并压缩:
-czvf(c=创建,z=gzip压缩,v=显示过程,f=指定文件名)tar -czvf mylinux.tar.gz /root/mylinux # 将 mylinux 目录打包压缩
-
解压:
-xzvf(x=解包)tar -xzvf mylinux.tar.gz # 解压到当前目录 tar -xzvf mylinux.tar.gz -C /tmp # 解压到指定目录

六、输出重定向:> 与 >>
> 和 >> 是命令行中的输出控制符,非常实用。
>将命令的输出覆盖写入到文件(如果文件不存在则新建)。>>将输出追加到文件末尾。
与 echo 结合我们已经用过,也可以把任何命令的结果保存起来,比如:
ls -l > filelist.txt # 把当前目录的详细列表存入 filelist.txt
cat filelist.txt # 查看
date >> filelist.txt # 把当前时间追加进去

七、快速查阅表
| 命令 / 概念 | 功能说明 | 常用示例与备注 |
|---|---|---|
pwd |
显示当前所在的目录 | pwd |
ls |
列出目录内容 | ls 简略列表;ls -l 详细列表;ls -a 显示隐藏文件 |
ll |
等同于 ls -l,显示权限、大小等 |
ll 如果没有别名,可手动设置 alias ll='ls -l' |
cd |
切换工作目录 | cd /etc 进入指定目录;cd .. 回上级;cd 或 cd ~ 回用户家目录 |
mkdir |
创建新目录 | mkdir newdir |
touch |
创建空文件或更新文件时间戳 | touch file.txt |
mv |
移动文件/目录 或 重命名 | mv old.txt new.txt 重命名;mv file /tmp/ 移动 |
rm |
删除文件或目录 | rm file.txt 删除文件;rm -r dir/ 删除目录(谨慎!) |
cat |
一次性显示整个文件内容 | cat /etc/hosts 适合较短的文件 |
more |
分屏查看文件,只能向下翻 | more longfile 空格翻页,q 退出 |
less |
分屏查看文件,支持上下滚动、搜索 | less longfile 上下箭头,/关键词 搜索,q 退出 |
tail |
查看文件末尾几行 | tail -n 20 file.log;tail -f file.log 实时追踪新内容 |
vi / vim |
文本编辑器 | vi file 进入命令模式;i 进入插入模式;Esc 退出插入;:wq 保存退出;:q! 不保存强制退出 |
echo |
输出字符串到终端 | echo "hello" 屏幕显示;echo "hello" > file 写入文件 |
> |
输出重定向(覆盖写入) | ls > list.txt 覆盖写入文件 |
>> |
输出重定向(追加写入) | date >> log.txt 追加到文件末尾 |
chmod |
修改文件权限 | chmod 755 script.sh 数字法;chmod u+x file 字母法 |
tar |
打包、压缩、解压 | tar -czvf my.tar.gz dir/ 打包压缩;tar -xzvf my.tar.gz -C /target 解压到指定目录 |
权限速记
- 数字表示:
r=4,w=2,x=1。如755= 所有者rwx,组r-x,其他人r-x。 - 字母表示:
u(所有者)、g(所属组)、o(其他人)、a(所有人);+添加权限,-移除权限。
核心目录速记
/bin:基础命令/etc:配置文件/home:普通用户家目录/root:超级管理员家目录/var:日志等变化数据/tmp:临时文件
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)