docs(readme): 更新文档说明删除操作的灵活性和新功能

- 修改 delete 操作说明,支持更灵活的起始位置和数量控制
- 添加 -y/--yes 参数说明,用于跳过删除确认
- 更新 delete 命令使用示例和参数说明
- 添加日期智能识别功能说明
- 增加备份清理功能说明
- 更新注意事项中关于删除操作的描述
- 添加常见问题中跳过删除确认的方法
- 更新数据清理示例使用新的删除语法
This commit is contained in:
macro
2026-04-26 00:26:38 +08:00
parent 800755abf5
commit e9fe98b1f6
+55 -32
View File
@@ -11,15 +11,17 @@
- 📊 **count**: 快速统计行数,适合脚本使用
- **insert**: 插入新行,支持指定位置或追加到末尾
- ✏️ **update**: 更新现有数据,支持部分列更新
-**delete**: 删除行,带安全确认机
-**delete**: 删除行,支持灵活的起始位置和数量控
- 🎨 **style**: 设置样式(行高、列宽、自动换行)
### 通用特性
- 📑 **多 Sheet 支持**: 所有操作都支持 `--sheet` 参数指定工作表
- 🔢 **负数索引**: 支持负数行号(-1 表示最后一行)
- ⚠️ **安全确认**: delete 操作需要用户确认
- ⚠️ **安全确认**: delete 操作默认需要用户确认,可用 `-y` 跳过
- 💾 **样式保留**: 使用 umya-spreadsheet 库,完整保留 Excel 样式
- 📤 **表格输出**: query 以美观的表格格式显示数据
- 📅 **日期智能**: 自动识别和格式化日期时间单元格
- 🧹 **备份清理**: 操作成功后自动删除 .bak 备份文件
## 📦 安装
@@ -158,27 +160,36 @@ dexcel data.xlsx update "新值" --row 1 --sheet "Sheet2"
### 5. 删除数据 (delete)
```bash
# 删除前10行
dexcel data.xlsx delete 10
# 删除第5行(需要确认)
dexcel data.xlsx delete 5
# 删除5行
dexcel data.xlsx delete -5
# 从第3行开始删除5行(跳过确认)
dexcel data.xlsx delete 3 --count 5 -y
# 删除第3到第8
dexcel data.xlsx delete 3 8
# 删除最后一
dexcel data.xlsx delete -1 -y
# 删除最后3行
dexcel data.xlsx delete -3 --count 3 -y
# 指定 Sheet
dexcel data.xlsx delete 1 --sheet "Sheet2"
```
#### delete 参数说明
- `<RANGE>`: 删除范围,支持以下格式:
- `N` - 删除前 N 行(如 `delete 10` 删除前10行)
- `-N` - 删除后 N 行(如 `delete -10` 删除后10行)
- `START END` - 删除从 START 到 END 行(如 `delete 1 10` 删除第1到第10行
- `<START>`: 起始行号(必需,支持负数)
- 正数:从前往后数(如 `5` 表示第5行)
- 负数:从后往前数(如 `-1` 表示最后一行)
- `--count <COUNT>`: 删除的行数(默认1
- `-y, --yes`: 跳过确认
- `--sheet <SHEET>`: Sheet 名称(可选)
**注意**: delete 操作需要用户确认(输入 y 继续),请谨慎操作!
**使用示例**:
- `dexcel file.xlsx delete 5` - 删除第5行(需确认)
- `dexcel file.xlsx delete 5 --count 3 -y` - 从第5行开始删除3行(跳过确认)
- `dexcel file.xlsx delete -1 --count 2 -y` - 删除最后2行
**注意**: delete 操作默认需要用户确认(输入 y 继续),可使用 `-y` 跳过确认。
### 6. 设置样式 (style)
@@ -264,14 +275,14 @@ done
### 示例 4: 数据清理
```bash
# 删除5行
dexcel data.xlsx delete 5
# 删除5行
dexcel data.xlsx delete 5 -y
# 从第10行开始删除5行
dexcel data.xlsx delete 10 --count 5 -y
# 删除最后3行
dexcel data.xlsx delete -3
# 删除第10到第20行
dexcel data.xlsx delete 10 20
dexcel data.xlsx delete -3 --count 3 -y
```
### 示例 5: 多 Sheet 操作
@@ -355,9 +366,7 @@ dexcel data.xlsx style --rows 1 --row-height 20 --sheet "Sheet2"
**delete 成功**:
```
操作成功:已删除第 5 行到第 10 行(共 6 行)
剩余行数: 94
文件: data.xlsx, Sheet: Sheet1
✓ 已删除第 5 至 7 行(共 3 行)
```
## ⚙️ 技术细节
@@ -386,11 +395,15 @@ dexcel data.xlsx style --rows 1 --row-height 20 --sheet "Sheet2"
- 浮点数 (Float)
- 布尔值 (Bool)
- 日期时间 (DateTime) - 自动识别并格式化
- `2024-01-15` → 显示为 `2024-01-15`
- `2024-12-25 14:30:00` → 显示为 `2024-12-25 14:30:00`
- `14:30:00` → 显示为 `14:30:00`
- 空值 (Empty)
- 错误值 (Error)
**写入时:**
- 所有数据都作为字符串写入
- 日期时间自动识别并转换为 Excel 序列号
- 样式完全保留
## ⚠️ 注意事项
@@ -400,11 +413,11 @@ dexcel data.xlsx style --rows 1 --row-height 20 --sheet "Sheet2"
3. **文件必须存在**: insert/update/delete 操作要求文件必须已存在
4. **分隔符默认**: 默认使用 `|` 分隔列
5. **文件格式**: 仅支持 `.xlsx`,不支持 `.xls`
6. **删除需确认**: delete 操作必须用户确认才能执行
7. **日期自动识别**: 自动识别并格式化日期单元格
8. **不可撤销**: delete 操作不可撤销,请谨慎操作!
9. **删除范围**: delete 支持多种删除模式(前N行、后N行、指定范围)
10. **样式保留**: 使用 umya-spreadsheet 库,完整保留 Excel 样式
6. **删除需确认**: delete 操作默认需要用户确认,可用 `-y` 跳过
7. **日期自动识别**: 自动识别并格式化日期单元格 (如 `2024-01-15`, `2024-12-25 14:30:00`)
8. **样式保留**: 使用 umya-spreadsheet 库,完整保留 Excel 样式
9. **备份清理**: 操作成功后自动删除 .bak 备份文件
10. **不可撤销**: delete 操作不可撤销,请谨慎操作!
11. **样式设置**: style 命令可设置行高、列宽、自动换行等样式
### 限制
@@ -445,7 +458,7 @@ dexcel data.xlsx insert "数据3|数据4"
```bash
dexcel data.xlsx query -5 # 最后5行
dexcel data.xlsx delete -1 # 删除最后一行
dexcel data.xlsx delete -1 -y # 删除最后一行
```
### Q4: 如何处理中文内容?
@@ -471,6 +484,13 @@ if ((dexcel data.xlsx count) -gt 100) {
不能撤销,请谨慎操作!建议先备份文件。
### Q7: 如何跳过删除确认?
使用 `-y``--yes` 参数:
```bash
dexcel data.xlsx delete 5 --count 3 -y
```
## 🎯 应用场景
### 1. 数据预览
@@ -502,11 +522,14 @@ dexcel data.xlsx update "新值" --row 6 --cell 2
### 5. 数据清理
删除错误数据:
```bash
# 删除5行
dexcel data.xlsx delete 5
# 删除5行
dexcel data.xlsx delete 5 -y
# 删除第10到第20
dexcel data.xlsx delete 10 20
# 第10行开始删除5
dexcel data.xlsx delete 10 --count 5 -y
# 删除最后3行
dexcel data.xlsx delete -3 --count 3 -y
```
### 6. 自动化脚本