juechafun/05-原子化笔记本/Linux-find-文件目录查找.md

92 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
#领域/Linux
#复盘/5
## 一句话描述
[___find 使用说明_____]
---
## 核心规范
>空想不如行动,积累胜于苛求。
>实践 > 沉淀 > 完美主义
实践不是盲目行动,而是带着“小目标、可验证“的方向试错,实践后必须沉淀(比如记录问题、总结规律),否则就是低水平重复。
实践大于沉淀,沉淀大于完美;完美是沉淀的终局方向,沉淀是实践的复盘产物;分域施策,避坑落地,始于行动,终于迭代。
---
## 三省沉淀法
- 达成了[__命令行检索文件并处理结果______]目标
- 遇到了[__命令需要重复输入______]问题
- 下次改进[_建立命令模板适配多样化场景_____]
## 个人理解
[__根据文件名称进行筛选并将结果数组传给 exec______]
## 实践计划
1. [___文件操作时使用find命令_____]
2. [________]
3. [________]
## 核心定义
`find` 是Linux/Unix系统中**功能最强的文件/目录查找命令**
```bash
find [查找路径] [查找条件] [执行动作]
```
### 参数速查
| 选项 | 说明 |
| ----------- | ----------------------------------------------- |
| -type | 查找类型<br>-type d 目录<br>-type f 文件<br>-type l 软链接 |
| -maxdepth 1 | 查找深度 |
| -name | 匹配名称 |
| -iname | 忽略大小写,匹配名称 |
| * | 匹配任意长度任意字符 |
| ? | 匹配单个字符 |
| [123] | 匹配括号内的单个字符 |
| -a | 逻辑与,默认满足所有条件 |
| -o | 逻辑或,满足任意一个条件即可 |
| ! | 排除符合条件内容 |
| -exec | 命令开头 |
| {} | 占位符 |
| \; | 结尾符;转义分号;后内容 |
| {} + | 参数聚合符,可放到命令中间(无需结尾符),将结果一次性传给命令 |
### 语法示例
#### ✅ 逐一参数、多命令执行
```bash
find [路径] [条件] -exec rm -rf {} \;
```
效果:参数填充至{}, 解析为多条指令
#### ✅ 全部参数、单命令执行
```bash
find [路径] [条件] -exec rm -rf {} +
```
效果:参数全部填充至{}, 解析为单条指令
### 命令模板
#### ✅ 查找特定名称的文件,并进行备份
```bash
find target_dir -type f -name "target_name" | cp {} /tmp/bak \;
```