Linux 常用命令速览

本文整理于 2026 年 03 月,记录并归纳了一些在日常工作与学习中经常使用的 Linux 命令。通过分类整理并附以简要说明,方便后续查阅,也希望在需要时能够快速定位到对应命令。


1. 文件与目录操作

1.1 查看

ls    # 平铺形式显示全部文件(不包含隐藏文件)
ls -a     # 平铺形式显示全部文件(包含隐藏文件)
ll 或者 ls -l     # 列表形式显示全部文件(不包含隐藏文件)
ll -a        # 列表形式显示显示全部文件(包含隐藏文件)
ls  testdir     # 查看 testdir 文件夹下的相关文件

tree        # 以树形结构展示目录层级
pwd      # 显示当前路径

cd  /path    # 进入指定目录
cd ..         # 返回上一级目录
cd ../..   #返回上2级目录 , 可拓展: ../../../.. 返回上多级目录
cd ~ 或 cd   # 回到用户主目录
cd -    # 切换回上一次目录

stat file  # 查看文件详细状态信息

1.2 创建与删除

mkdir  testdir   # 创建一个名为 testdir 的文件夹
mkdir -p testdir/subdir  # 递归创建多级目录文件夹: testdir 的文件夹下面同时有 subdir 的文件夹,可拓展:testdir/subdir/c/d...
touch file    # 创建一个空文件
rm file       # 删除 文件
rm -r testdir     # 删除一个名为 testdir 的文件夹,包含子文件和子文件夹 (☢️慎用)
rm -rf testdir    # 强制删除 testdir 文件夹下所有的文件和文件夹 (☢️危险慎用

📚 rm -r testdir 与 rm -rf testdir 区别:

参数解释:

  • -r = recursive(递归)
  • -f = force(强制)

📝 假设有如下目录结构:

testdir(主文件夹)
├── file1(子文件)
├── file2(子文件)
└── subdir(子文件夹)
└── file3(子文件只读)

如果执行:

rm -r testdir

系统会提示:

rm: remove write-protected regular file 'testdir/subdir/file3'? 

你需要输入 y ,才会删除。

如果执行:

rm -rf testdir

即使各个目录下文件存在只读或者权限问题,此命令也会直接删除,不会提示询问。

☢️ 执行 rm 命令前,请再次确认目标文件是否需要删除,以避免误删重要数据。

1.3 复制与移动

cp file1 file2        # 复制文件file1,生成 file2
cp -r testdir1  testdir2     # 复制整个文件夹 testdir1,生成文件夹 testdir2
mv a b        # 移动/重命名
ln -s  source_name/dir_name  link_name       # 创建一个链接名(软连接),指向原文件或者文件夹。    解释:软链接可以理解为 Windows 的快捷方式。

2. 文件内容查看与编辑

2.1 文件内容查看

cat file      # 查看文件全部内容
cat -n file   # 带行号查看文件内容
tac file   # 反向显示文件
nl file        # 显示行号

less file     # 分页查看,支持上下滚动,q 键 退出查看
more file     # 分页查看(空格键翻页)
head file     # 查看前10行;拓展:head -20 file, 查看前20行。
tail file     # 查看后10行;拓展:tail -20 file, 查看前20行。

tail -f file.log   # 实时查看日志
tail -f file.log | grep ERROR  # 实时过滤错误日志

wc -l file   # 统计文件总行数
wc -w file   # 统计单词数
wc -c file     # 统计字节数

diff file1 file2   # 比较两个文件内容的差异
sort file     # 对文件内容进行排序
uniq file     # 去除重复行,通常配合 sort 使用,如:sort file | uniq

2.2 文件搜索

find / -name file.txt     # 查找文件
find . -type f            # 查找所有文件
find . -type d            # 查找目录

locate file.txt           # 快速查找文件(基于数据库)

which python              # 查找命令路径
whereis python            # 查找程序路径和源码

grep "error" file.log   # 搜索含 error 关键词的行
grep -i "error" file.log   # 忽略大小写搜索
grep -n "error" file.log   # 显示错误的行号
grep -r "error" /logs/   # 递归搜索,搜索整个目录
grep -v "debug" file.log   # 反向过滤,排除 debug
grep -c "error" file.log   #统计 error 行的数量

2.3 编辑文件

vi file    #打开文件
vim file    #打开文件
进入文件后相关的操作:
按键 i 进入vim编辑模式;
按键 Esc 退出编辑;
:wq    # 保存并退出vim
:wq!   # 保存并强制退出vim
:q      # 不保存并退出vim
:q!  # 不保存并强制退出vim
:w     # 保存但不退出vim
:w!    # 强制保存但不退出vim         解释:w-write  q=quit

awk '{print $1}' file     # 提取第1列的文本内容 ;可拓展:awk '{print $2}' file 

📚 解释:awk ‘{print $1}’ file

📝 假设 testfile 文件内容如下:

Tom 18
Jack 20
Lucy 19

执行命令:

awk '{print $1}' testfile

结果:

Tom
Jack
Lucy

3. 权限管理

3.1 一些权限命令相关的知识

3.1.1 查看当前用户

whoami      # 查看当前用户
id          # 查看用户 UID GID 和所在的组
groups      # 查看用户所在组

3.1.2 查看文件的权限

ls -l        # 查看文件权限;更多命令,请参考 1.1 小节内容

可以显示文件的权限、拥有者、所属组、大小、时间 等详细信息。

📚 示例

-rwxr-xr-x 1 wangsan design 1024 Mar 5 15:55 test.sh

相关字段解释:

字段含义
表示这是一个文件 ,拓展:(-文件、 d目录、 l软链接、c字符设备、b块设备)
rwx拥有者(owner)的权限:可读 r,可写 w,可执行 x
r-x所属组(group)的权限:可读 r,不可写 -,可执行 x
r-x其他用户(others)的权限:可读 r,不可写 -,可执行 x
1目录项(硬链接)数量,表示有几个文件名指向这个文件目录
wangsan拥有者用户(user)
design所属用户组(group)
1024文件目录大小(字节)
Mar 5 15:55最后修改时间
test.sh文件名

3.1.3 权限分组

u — 用户(文件拥有者)(User)
g — 组(Group)
o — 其他人(Others)
a — 所有人(all)

对应的结构:

rwx r-x r--
│   │   │
│   │   └── 其他用户权限
│   └────── 同组用户权限
└───────── 文件拥有者权限

其中:

r = read      # 读权限
w = write     # 写权限
x = execute   # 执行权限
-    # 无权限

3.1.4 文件权限和目录权限具有不同含义

权限文件含义目录含义
r读取文件查看目录内容
w修改文件创建删除文件
x执行文件进入目录

3.2 修改权限(chmod)

权限的2种表达方式

1️⃣ 符号模式
2️⃣ 数字模式

🔸 符号模式:使用字母和符号修改权限

基本格式:

chmod [对象] [操作符] [权限] 文件
  • 对象:u — 用户(文件拥有者)(User)、g — 组(Group)、o — 其他人(Others)、a — 所有人(all)
  • 操作符:
符号含义
+增加权限
删除权限
=设置权限
  • 权限:r=read(读)、w=write(写)、x=execute(执行)

📚 举例:

chmod g-w file  # 删除组写权限
chmod u+x file   # 给所有者增加执行权限
chmod u=rwx file   # 用户权限设为rwx
chmod u+x,g+w,o-r file  # 用户增加执行、组增加写、其他人删除读

🔸 数字模式:使用数字表示权限

权限结构:

用户 组 其他人

数字来源(二进制):

权限二进制数字
r1004
w0102
x0011

权限组合:

权限数字
0
–x1
-w-2
-wx3
r–4
r-x5
rw-6
rwx7

常见权限对照:

数字权限字符权限含义
777rwxrwxrwx所有人可读写执行
755rwxr-xr-x所有者全部权限,其他人只读执行
644rw-r–r–所有者读写,其他只读
600rw——-只有所有者可读写
700rwx——只有所有者可操作

📚 举例:

chmod 777 file   # 所有人可读写执行
chmod -R 755 dir        # 递归修改目录权限;  其中:-R 表示递归将目录下所有文件权限全部修改

3.3 修改文件的拥有者(chown)

作用:改变 文件或目录 属于哪个用户。

chown user file              # 修改文件拥有者
chown user:group file.txt        # 修改拥有者和组
chown -R user:group dir/         # 递归修改目录

📚 举例:

chown root file.txt   # file.txt 归 root 用户所有

3.4 修改所属组(chgrp)

作用:修改 文件所或目录 所属的用户组。

chgrp group file.txt

📚 举例:

chgrp design file.txt   # 使file.txt 属于 design 组

4. 归档(打包)、压缩与解压

一个重要的概念:归档≠ 压缩

简单理解:

  • 归档(Archive):把多个文件打包成一个文件
  • 压缩(Compress):让文件体积变小

在 Linux 中通常是 先归档,再压缩。

4.1 归档(打包)和 解压

命令作用简单理解
tar -cvf file.tar dir/归档目录把 dir 打包成 file.tar
tar -xvf file.tar解归档解压 file.tar 包
tar -tvf file.tar查看内容查看包内文件
tar -rvf file.tar file.txt添加文件向 file.tar 中追加
tar -cvf backup.tar file1 file2打包多个文件一起归档

相关参数解释:

参数含义
-ccreate 创建
-xextract 解压
-tlist 列出内容,看看包里有什么文件
-rappend 追加文件,往包里再加文件
-vverbose 显示过程
-ffile 指定文件

📚 举例:

tar -cvf file.tar mydir  # 把 mydir 打包成 file.tar
tar -cvf /backup/file.tar mydir   # 把 mydir 打包到 backup 目录下,/backup/file.tar
tar -xvf file.tar  # 解压 file.tar
tar -xvf file.tar -C /backup   # 解压 file.tar 到指定目录 /backup中。解释: -C 解压到指定目录。

4.2 压缩

🔸 gzip(最常见压缩)

命令作用简单理解
gzip file.txt压缩文件生成 file.txt.gz
gunzip file.txt.gz解压恢复原文件
gzip -d file.txt.gz解压与 gunzip 相同
gzip -k file.txt保留原文件压缩生成 file.txt.gz

🔸 bzip2

命令作用简单理解
bzip2 file.txt压缩生成 file.txt.bz2
bunzip2 file.txt.bz2解压恢复原文件
bzip2 -d file.txt.bz2解压与 bunzip2 相同
bzip2 -k file.txt保留原文件压缩生成 file.txt.bz2

🔸 xz

命令作用简单理解
xz file.txt压缩生成 file.txt.xz
unxz file.txt.xz解压恢复原文件

🔸 zip(跨平台常用)

Windows / Linux 都支持

命令作用
zip file.zip file1 file2压缩
zip -r file.zip dir/压缩目录
unzip file.zip解压
unzip -l file.zip查看内容

📝 压缩命令对比:

工具压缩率压缩速度解压速度常见后缀典型用途
gzip很快很快.gzLinux最常用
bzip2较慢较慢.bz2比gzip压缩率高
xz非常高.xz高压缩率场景
zip.zip跨平台

4.3 归档(打包)+ 压缩

实际使用中通常是先打包在压缩。

常见的组合:

格式压缩命令解压命令
.tar.gztar -czvf a.tar.gz dir(常用)tar -xzvf a.tar.gz(常用)
.tar.bz2tar -cjvf a.tar.bz2 dirtar -xjvf a.tar.bz2
.tar.xztar -cJvf a.tar.xz dirtar -xJvf a.tar.xz

其中:参数里的 z/j/J 分别代表 gzip / bzip2 / xz。

💡 -cvf 等类似命令,实际是三个参数:-c -v -f ,只是 Linux 命令允许把多个短参数 合并写在一起,所以:

tar -c -v -f file.tar dir/   与   tar -cvf file.tar dir/   效果等价

5. 系统信息和监控

5.1 系统基本信息查看

命令作用简单理解
uname -a查看系统内核信息查看 Linux 系统版本
hostname查看主机名当前服务器名字
date显示当前时间系统时间
uptime查看系统运行时间开机多久 + 系统负载
whoami当前登录用户我是谁
who当前登录用户列表谁在登录系统
w查看在线用户及操作谁在做什么

5.2 CPU 信息查看

命令作用简单理解
lscpu查看CPU详细信息CPU型号、核心数
top实时查看系统资源CPU / 内存 / 进程
htop增强版top更直观(需要安装)

💡 top / htop 按 q 退出实时监控。

5.3 内存信息查看

命令作用简单理解
free -h查看内存使用情况RAM 和 Swap
vmstat内存和系统状态系统性能统计
cat /proc/meminfo查看内存详细信息Linux内存详细数据

5.4 磁盘信息查看

命令作用简单理解
df -h查看磁盘空间硬盘使用情况
du -sh查看目录大小文件夹占用空间
lsblk查看磁盘结构磁盘分区
fdisk -l查看磁盘分区表磁盘信息

6. 进程管理

6.1 查看进程

命令作用简单理解
ps查看当前终端进程查看当前窗口运行的程序
ps -ef查看系统所有进程最常用查看全部进程
ps aux另一种显示全部进程方式显示更详细

6.2 查找指定进程

命令作用示例
grep过滤进程ps -ef | grep nginx
pgrep查找进程PIDpgrep nginx
pidof查找程序PIDpidof nginx

6.3 结束进程

命令作用简单理解
kill PID结束进程根据PID结束
kill -9 PID强制结束强制杀死
killall 进程名按名称结束杀死所有同名进程
pkill 进程名按名称结束类似 killall
xkill鼠标点击窗口杀死程序图形界面程序的进程

一些实用命令:

clear 或 Ctrl+l    #清除当前命令窗口显示,但保留历史记录,可以鼠标滚动查看

Ctrl + c   #终止正在执行的命令

Ctrl + d   # 退出 terminal

↑/↓ 键      # 切换历史命令

输入前几个字母然后按 Tab 命令自动补全

vncconfig //表示可以从window系统复制文本到linux系统;
vncserver –list //列出正在使用的端口;
vncserver –kill 端口 //结束相关端口;

发表评论