Linux常用命令大全(目录、文件、压缩、编辑与查找)
前言
学习 Linux 时,最先遇到的往往不是复杂的服务部署,而是在终端里完成一些基础操作:查看目录、切换路径、创建文件夹、查看日志、复制移动文件、压缩解压、编辑配置文件、查找文件内容等。
这篇文章主要整理 Linux 初学阶段最常用的一批命令,适合刚接触 Linux、正在学习服务器基础操作,或者需要复习常见命令用法的同学阅读。
本文以常见 Linux 发行版的命令行环境为基础,目录和文件操作主要参考 GNU Coreutils 的常见用法;不同发行版在包管理器、默认编辑器、命令版本上可能略有差异,实际使用时以当前系统环境为准。
一、Linux 命令初体验
Linux 命令通常由三部分组成:
命令 [选项] [参数]
例如:
ls -l /home
这里:
ls是命令,用来查看目录内容。-l是选项,表示以长格式显示。/home是参数,表示要查看的目录路径。
在 Linux 中,路径分为两类:
| 路径类型 | 说明 | 示例 |
|---|---|---|
| 绝对路径 | 从根目录 / 开始写完整路径 | /home/user/test.txt |
| 相对路径 | 相对于当前所在目录 | ./test.txt、../logs |
常见特殊路径:
| 写法 | 含义 |
|---|---|
. | 当前目录 |
.. | 上一级目录 |
~ | 当前用户的家目录 |
/ | 根目录 |
可以先用下面两个命令熟悉当前位置:
pwd whoami
pwd 用来查看当前所在目录,whoami 用来查看当前登录用户。
二、目录操作命令
2.1ls:查看目录内容
ls 用来列出目录中的文件和子目录。如果不指定路径,默认查看当前目录。
ls
常见用法:
ls -l ls -a ls -lh ls /etc
参数说明:
| 参数 | 作用 |
|---|---|
-l | 以长格式显示文件权限、所有者、大小、修改时间等信息 |
-a | 显示隐藏文件,Linux 中以 . 开头的文件默认隐藏 |
-h | 和 -l 搭配使用,让文件大小更易读,例如 KB、MB |
实际开发或运维中,我最常用的是:
ls -lah
这个命令可以同时看到隐藏文件、权限和更直观的文件大小。
2.2cd:切换目录
cd 用来切换当前所在目录。
cd /usr/local
常见用法:
cd .. cd ~ cd - cd /var/log
说明:
| 命令 | 含义 |
|---|---|
cd .. | 回到上一级目录 |
cd ~ | 回到当前用户家目录 |
cd - | 回到上一次所在目录 |
cd /var/log | 切换到指定绝对路径 |
如果路径中包含空格,可以使用引号:
cd "my project"
2.3mkdir:创建目录
mkdir 用来创建目录。
mkdir logs
如果要一次创建多级目录,可以使用 -p:
mkdir -p app/logs/nginx
-p 的好处是:如果上级目录不存在,会自动一起创建;如果目录已经存在,一般也不会因为这个目录存在而报错。
常见场景:
mkdir backup mkdir -p /tmp/demo/files
2.4rm:删除文件或目录
rm 用来删除文件。
rm test.txt
删除目录时,经常会看到:
rm -r logs
参数说明:
| 参数 | 作用 |
|---|---|
-r | 递归删除目录及目录下的内容 |
-f | 强制删除,不提示确认 |
-i | 删除前逐个确认 |
风险提示:
rm 是 Linux 里非常危险的命令之一,删除后通常不会进入回收站。尤其是下面这种命令一定要谨慎:
rm -rf 目录名
建议初学阶段多使用:
rm -i file.txt
或者先用 ls 确认目标路径:
ls /tmp/demo rm -r /tmp/demo
如果是生产服务器,删除前最好先备份,或者先移动到临时目录,确认没有问题后再真正删除。
三、文件查看命令
3.1 cat:查看文件全部内容
cat 可以直接输出文件内容。
cat application.yml
适合查看内容较少的文件,比如配置片段、小脚本、说明文件。
常见用法:
cat test.txt cat -n test.txt
-n 可以显示行号。
注意:如果文件非常大,不建议直接用 cat,因为会一次性刷满终端,阅读体验很差。查看大文件时更推荐 more、less、head、tail。
3.2 more:分页查看文件
more 用来分页查看文件内容。
more catalina.out
常用操作:
| 按键 | 作用 |
|---|---|
Space | 向下翻一页 |
Enter | 向下翻一行 |
q | 退出查看 |
more 适合简单分页查看文件。如果系统支持 less,实际工作中 less 会更灵活,因为它支持前后翻动。
3.3 head:查看文件开头
head 用来查看文件开头内容。默认显示前 10 行。
head access.log
指定行数:
head -n 20 access.log
常见场景:
- 查看 CSV 文件前几行,确认字段格式。
- 查看日志文件开头,确认启动时间。
- 查看配置文件头部注释。
3.4 tail:查看文件结尾
tail 用来查看文件末尾内容。默认显示最后 10 行。
tail app.log
指定行数:
tail -n 50 app.log
实时查看日志:
tail -f app.log
tail -f 是排查服务问题时非常常用的命令。比如启动一个 Spring Boot 项目后,可以用它实时观察日志输出:
tail -f logs/app.log
如果日志一直没有新内容,可以按 Ctrl + C 退出。
四、复制和移动命令
4.1 cp:复制文件或目录
cp 用来复制文件。
cp source.txt target.txt
复制到指定目录:
cp app.log backup/
复制目录时需要加 -r:
cp -r project project_backup
常见参数:
| 参数 | 作用 |
|---|---|
-r | 递归复制目录 |
-i | 覆盖前询问 |
-v | 显示复制过程 |
-p | 尽量保留文件属性 |
建议复制重要文件时使用:
cp -iv config.yml config.yml.bak
这样如果目标文件已经存在,会提示确认,避免误覆盖。
4.2 mv:移动或重命名
mv 有两个常见作用:移动文件、重命名文件。
重命名:
mv old.txt new.txt
移动到目录:
mv app.log logs/
移动并改名:
mv app.log logs/app-2026-05-30.log
风险提示:
mv 如果目标文件已存在,可能会覆盖目标文件。为了更安全,可以使用:
mv -i old.txt new.txt
-i 会在覆盖前提示确认。
五、打包和压缩命令
Linux 中打包和压缩经常一起出现,但它们不是一回事:
- 打包:把多个文件合成一个文件,例如
.tar。 - 压缩:减少文件体积,例如
.gz。
5.1 tar:打包和解包
打包目录:
tar -cvf logs.tar logs/
解包:
tar -xvf logs.tar
常见参数:
| 参数 | 作用 |
|---|---|
-c | 创建归档文件 |
-x | 解开归档文件 |
-v | 显示处理过程 |
-f | 指定归档文件名 |
-z | 通过 gzip 压缩或解压 |
打包并压缩为 .tar.gz:
tar -czvf logs.tar.gz logs/
解压 .tar.gz:
tar -xzvf logs.tar.gz
5.2 gzip和gunzip:压缩单个文件
压缩文件:
gzip app.log
压缩后会生成:
app.log.gz
解压:
gunzip app.log.gz
注意:gzip 更常用于压缩单个文件。如果要压缩整个目录,通常先用 tar 打包,再配合 gzip 压缩,也就是 .tar.gz。
六、文本编辑命令
6.1 vi和vim简介
vi 是 Unix/Linux 系统中非常经典的文本编辑器,vim 可以理解为增强版的 vi,功能更丰富,使用体验也更好。
在服务器上修改配置文件时,经常会看到:
vi nginx.conf vim application.yml
如果只是简单编辑配置,掌握几个基础操作就够用了。
6.2 vim安装
有些最小化安装的 Linux 系统可能没有自带 vim。可以根据发行版使用对应包管理器安装。
Debian / Ubuntu 常见写法:
sudo apt update sudo apt install -y vim
CentOS / RHEL / Fedora 常见写法:
sudo dnf install -y vim
旧版本 CentOS 也可能使用:
sudo yum install -y vim
如果命令不可用,需要先确认当前系统发行版和包管理器。
6.3 vim基础使用
打开文件:
vim test.txt
vim 常见模式:
| 模式 | 说明 |
|---|---|
| 普通模式 | 默认模式,用来移动光标、复制、删除、保存退出 |
| 插入模式 | 用来输入文本 |
| 命令模式 | 用来执行保存、退出、查找等命令 |
进入插入模式:
i
退出插入模式:
Esc
保存退出:
:wq
不保存退出:
:q!
只保存不退出:
:w
查找内容:
/keyword
常用操作总结:
| 操作 | 命令 |
|---|---|
| 进入编辑 | i |
| 退出编辑 | Esc |
| 保存退出 | :wq |
| 强制退出不保存 | :q! |
| 删除当前行 | dd |
| 复制当前行 | yy |
| 粘贴 | p |
初学 vim 最容易卡住的地方是“不知道怎么退出”。记住:先按 Esc 回到普通模式,再输入 :wq 或 :q!。
七、查找命令
7.1 find:按条件查找文件
find 用来在目录中按条件查找文件。
基本格式:
find 查找路径 查找条件
按文件名查找:
find /etc -name "*.conf"
在当前目录查找 .log 文件:
find . -name "*.log"
按文件类型查找:
find . -type f find . -type d
说明:
| 条件 | 作用 |
|---|---|
-name | 按名称查找 |
-type f | 查找普通文件 |
-type d | 查找目录 |
查找并删除要特别谨慎。建议先查出来确认:
find . -name "*.tmp"
确认无误后再考虑删除:
find . -name "*.tmp" -delete
生产环境中不建议直接复制网上的 find ... -delete 命令执行,一定要先确认匹配范围。
7.2 grep:按内容查找
grep 用来在文件内容中搜索关键字。
grep "error" app.log
常见用法:
grep -n "error" app.log grep -i "error" app.log grep -r "TODO" src/
参数说明:
| 参数 | 作用 |
|---|---|
-n | 显示匹配内容所在行号 |
-i | 忽略大小写 |
-r | 递归搜索目录 |
-l | 只显示包含匹配内容的文件名 |
查找日志中的错误:
grep -n "Exception" app.log
查找项目中包含某个关键字的文件:
grep -r "TODO" .
如果文件名中可能包含空格或特殊字符,find 配合 xargs 时更推荐使用 -print0 和 -0:
find . -name "*.java" -print0 | xargs -r -0 grep -n "TODO"
这样可以更安全地处理带空格的文件名,避免因为文件名被错误拆分而导致搜索失败。
八、常用命令组合示例
8.1 查看最近日志
tail -n 100 app.log
8.2 实时查看错误日志
tail -f app.log | grep "ERROR"
8.3 备份配置文件
cp -iv application.yml application.yml.bak
8.4 查找配置文件
find /etc -name "*.conf"
8.5 查找项目中的关键字
grep -rn "server.port" .
8.6 打包日志目录
tar -czvf logs.tar.gz logs/
九、学习 Linux 命令的建议
刚开始学习 Linux 命令时,不建议一次性背太多参数。更好的方式是按使用场景记忆:
- 查看当前位置:
pwd - 查看目录:
ls - 切换目录:
cd - 创建目录:
mkdir - 删除文件:
rm - 查看文件:
cat、more、head、tail - 复制移动:
cp、mv - 打包压缩:
tar、gzip - 编辑文件:
vi、vim - 查找文件:
find - 查找内容:
grep
同时要养成两个习惯:
- 执行删除、覆盖、批量操作前,先用
ls、find或grep确认范围。 - 修改重要配置前,先用
cp备份一份。
例如:
cp -iv nginx.conf nginx.conf.bak vim nginx.conf
这样即使配置改错了,也可以快速回退。
总结
这篇文章主要整理了 Linux 中最常用的一批基础命令:目录操作、文件查看、复制移动、压缩打包、文本编辑和查找搜索。
这些命令本身并不复杂,真正重要的是理解它们在实际场景中的作用。比如 tail -f 常用于查看实时日志,cp -iv 适合修改配置前备份,find 和 grep 可以配合完成文件与内容搜索,vim 则是服务器上修改文件时绕不开的基础工具。
最后再强调一点:Linux 命令很强大,但越强大的命令越要注意执行范围。尤其是 rm、mv、find -delete 这类可能删除或覆盖数据的命令,执行前一定要确认路径、确认权限、确认是否需要备份。
以上就是Linux常用命令大全(目录、文件、压缩、编辑与查找)的详细内容,更多关于Linux常用命令大全的资料请关注脚本之家其它相关文章!
相关文章
fedora 23 lvm2格式 根目录磁盘空间不足 扩容方法
下面小编就为大家带来一篇fedora 23 lvm2格式 根目录磁盘空间不足 扩容方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-02-02


最新评论