一、前言
在掌握 Linux 基础命令后,进阶操作与工具是提升效率的关键。本文将系统梳理文件操作、通配符、前后台任务、进程管理、vi 编辑器、GDB 调试等核心内容,帮你从入门走向熟练。
二、核心文件操作命令进阶
1. 基础操作增强
rmdir/rm -rf:删除目录rmdir test_dir # 仅删除空目录 rm -rf test_dir # 强制删除目录及所有内容(谨慎使用!)ls -r/ls -R:排序与递归查看ls -r # 逆序显示文件 ls -R # 递归显示所有子目录内容clear:清空终端屏幕cleartouch:创建空文件(若文件已存在则更新时间戳)touch new_file.txt
2. 复制、移动与重定向
cp/mv:文件 / 目录复制与移动cp file1.txt file2.txt # 复制文件内容到新文件 cp -r dir1 dir2 # 递归复制目录 mv old_name.txt new_name.txt # 重命名文件 mv file.txt ~/Documents/ # 移动文件到指定目录- 管道符
|:将前一个命令的输出作为后一个命令的输入ps aux | grep "bash" # 查找包含 bash 的进程
3. 查找与文本处理
find:按文件名 / 类型查找文件find . -name "*.txt" # 在当前目录及子目录查找所有 .txt 文件grep:按字符串匹配查找文本grep "Linux" test.txt # 在文件中查找包含 "Linux" 的行 grep -r "key" ./ # 递归查找当前目录下包含 "key" 的文件cat:查看文件内容cat test.txt # 直接输出文件全部内容
三、通配符与权限
1. 通配符(匹配文件名)
| 通配符 | 作用 | 示例 |
|---|---|---|
* | 匹配任意长度字符 | ls *.txt匹配所有 .txt 文件 |
? | 匹配单个任意字符 | ls file?.txt匹配 file1.txt、fileA.txt |
[abc] | 匹配括号内任意一个字符 | ls file[123].txt匹配 file1.txt、file2.txt、file3.txt |
[a-z] | 匹配指定范围内的字符 | ls file[a-z].txt匹配 filea.txt 到 filez.txt |
2. 权限与超级用户
sudo:临时切换为管理员权限执行命令sudo rm -rf /var/log/* # 管理员权限删除系统日志chmod:修改文件权限(数字 / 文字法)chmod 755 script.sh # 所有者 rwx,组/其他用户 r-x chmod u+x script.sh # 给所有者添加执行权限
四、前后台任务管理
1. 后台运行与切换
&:让命令在后台运行sleep 300 & # 让 sleep 命令在后台执行 300 秒jobs:查看当前会话的后台任务jobs -l # 显示任务编号与 PIDbg/fg:将暂停任务切换到后台 / 前台bg %1 # 将任务 1 放到后台继续运行 fg %1 # 将任务 1 切回前台
2. 进程管理
ps:查看进程信息ps aux # 查看所有进程(包含系统进程) ps -ef | grep "nginx" # 查找 nginx 相关进程pid相关概念:PID:进程 ID(唯一标识)PPID:父进程 IDTTY:进程所在终端CMD:进程启动命令
kill:终止进程kill -9 <PID> # 强制终止指定 PID 的进程(-9 为强制信号)
五、vi 编辑器核心操作
1. 三种模式切换
- 命令模式:启动 vi 后默认进入,可执行复制、粘贴、删除、跳转等操作
- 输入模式:按
i/a/o进入,可编辑文本内容 - 底行模式:按
:进入,可执行保存、退出、查找、设置行号等操作
2. 常用快捷键
表格
| 操作 | 命令模式快捷键 | 底行模式命令 |
|---|---|---|
| 进入输入模式 | i(光标前插入)、a(光标后插入)、o(下一行插入) | - |
| 保存文件 | - | :w |
| 退出 vi | - | :q(未修改时退出)、:q!(强制退出不保存) |
| 保存并退出 | - | :wq或x |
| 复制 / 粘贴 | yy(复制当前行)、p(粘贴到下一行) | - |
| 删除 | dd(删除当前行)、dw(删除当前单词) | - |
| 撤销 | u | - |
| 显示行号 | - | :set nu |
| 取消行号 | - | :set nonu |
3. 示例:编辑并保存文件
vi test.txt # 进入后按 i 进入输入模式,输入内容 # 按 Esc 回到命令模式 # 按 :wq 保存并退出六、GDB 调试工具入门
1. 编译与启动调试
- 编译时添加
-g参数生成调试信息:gcc -g main.c -o main # 编译可执行程序并保留调试信息 - 启动 GDB:
gdb ./main # 加载可执行程序进入调试模式
2. 核心调试命令
| 命令 | 作用 |
|---|---|
l | 查看源码(list) |
b <行号> | 在指定行设置断点(break) |
b <函数名> | 在函数入口设置断点 |
info b | 查看所有断点信息 |
r | 运行程序(run) |
n | 单步执行(next,不进入函数) |
s | 单步进入(step,进入函数内部) |
c | 继续执行(continue,直到下一个断点) |
p <变量名> | 打印变量值(print) |
q | 退出 GDB(quit) |
3. 示例调试流程
gdb ./main (gdb) b main # 在 main 函数处设置断点 (gdb) r # 运行程序 (gdb) n # 单步执行 (gdb) p num # 查看变量 num 的值 (gdb) c # 继续执行 (gdb) q # 退出调试七、总结
本文覆盖了 Linux 进阶操作的核心模块:
- 文件操作:复制、移动、重定向、查找与文本处理
- 通配符与权限:高效匹配文件与权限管理
- 前后台任务:后台运行、任务切换与进程管理
- vi 编辑器:三种模式与核心编辑操作
- GDB 调试:编译、断点、单步执行与变量查看