BitComet 文件优先级与跳过下载 — 一个 BT 任务里选择性下哪些文件
多文件 BT 任务
一个 BT 任务通常不只一个文件——比如一个游戏安装包可能有 setup.exe、game01.dat、game02.dat;一个电视剧合集可能有第 1~20 集的 20 个视频文件;一个软件合集可能有十几个不同的安装包。
传统 BT 客户端的做法是"要么全下、要么一个不下",这意味着如果你只想看某一集电视剧,还是得把整个 20 集下载完——这是 BT 协议早期设计的局限。
现代 BT 客户端(包括 BitComet)都支持选择性下载——可以在一个 BT 任务里勾选要下哪些文件、跳过哪些文件。BitComet 在这个基础上还额外提供了优先级控制——被勾选的文件之间也可以分个先下哪个、后下哪个。
在 BitComet 中选择性下载
步骤
- 新建 BT 任务时,在 "BT 任务属性" 窗口的 "文件" 选项卡里,你会看到一个完整的文件列表——就是 torrent 里声明的所有文件。
- 每个文件前面有一个复选框——勾选表示要下载,不勾选表示跳过。
- 文件列表通常按 torrent 里的原始顺序排列,不是按字母或大小排序。BitComet 会自动识别 torrent 里的目录结构并用树形展开显示。
- 可以在文件列表上方点击 "全选" / "全不选" / "反选" 按钮快速操作。
- 确认后点确定开始下载——BitComet 只会下载你勾选的那些文件。
下载过程中修改
任务已经在跑了怎么办?右键选中任务 → "文件" 选项卡(或底部详情面板的文件选项卡),直接勾选或取消勾选文件。BitComet 会立即生效——新勾选的文件会开始下载,新取消勾选的文件 BitComet 会停止继续请求它的分片(已经下载到的部分不会自动删除)。
优先级设置
除了选/不选,BitComet 还支持给文件排优先级:
- 在文件列表里选中一个或多个文件(Ctrl+点击多选,Shift+点击连续选)。
- 右键 → "优先级" → 从以下选项中选一个:
| 优先级 | 含义 |
|---|---|
| 跳过 | 等同于取消勾选,不下载 |
| 低 | 下载但尽量延后 |
| 正常 | 默认优先级,BitComet 自动调度 |
| 高 | 优先下载,BitComet 会优先请求这些文件所需的分片 |
| 最高 | 紧急优先,BitComet 会想尽办法先把这个文件搞定 |
优先级的实际效果
- "最高"优先级:如果你在一个 10 文件的 BT 任务里把某个文件设为"最高",BitComet 会优先请求这个文件所需的所有分片——即使这些分片不是当前网络上最稀有的。效果是这个文件会以最快速度先下载完成,其他文件暂时被搁置。适合"只想先看这一集"这种场景。
- "高"优先级:比正常稍高,主要体现在分片请求时优先考虑。不会像"最高"那样完全霸占带宽。
- "低"优先级:有空闲带宽时才下载,主要让给其他高优先级文件。
注意:优先级只是 BitComet 客户端的请求偏好,不是硬性保证。如果网络上某个高优先级文件所需的分片非常稀少(甚至断种了),那就算设为"最高"也没用——BitComet 不可能凭空创造数据。优先级能做的是在已有资源中让你更想要的文件先完成。
目录级别的勾选和优先级
BitComet 也支持按目录操作:
- 在文件列表里点击文件夹图标(左边有个小三角可以展开/折叠),然后右键 → "勾选整个目录" 或 "取消勾选整个目录"。
- 也可以给整个目录设优先级——效果等同于对目录下所有文件批量设优先级。
这对于结构清晰的 torrent(比如分 Season 1、Season 2 的剧)特别方便——只勾 Season 1 看、Season 2 留着以后再下。
跳过的文件会占空间吗
不会。被取消勾选的文件 BitComet 根本不会预分配磁盘空间,也不会写入任何数据。
但有一个细节需要注意:BT 协议按分片交换数据。如果一个分片同时被"勾选文件"和"跳过文件"共同拥有(文件边界恰好落在分片中间),BitComet 为了能下载"勾选文件"的那部分,不得不下载整个分片——然后在本地把"跳过文件"的那部分数据丢掉。这就是前一篇"文件分块对齐"里提到的冗余传输问题。
好消息是:如果 torrent 是 BitComet 用"文件分块对齐"技术制作的,就不会出现跨文件分片——跳过文件的冗余传输为零。所以如果你的下载者用 BitComet 下载你发布的 torrent,对齐技术会让选择性下载特别高效。
如何确认选择性下载在工作
观察任务详情面板的 "文件" 选项卡:
- 被勾选且正在下载的文件会显示进度条和实际字节数(比如
已下载 523 MB / 1.2 GB)。 - 被取消勾选的文件进度条是 0%,而且不会有任何字节下载。
- 如果某个文件虽然勾选了但进度长期不动,可能是它所需的分片在网络上特别稀少——试试把它设为"最高"优先级看看能不能改善(但如果真的没人有那个分片,设什么优先级都没用)。
和 HTTP/FTP 任务的区别
BitComet 里的 HTTP/FTP 任务不支持选择性下载——要么整个文件下,要么不下。这是 HTTP 协议本身的限制(没有 torrent 那样的多文件列表和分片结构)。只有 BT 任务能选择性下载。
常见问题
取消勾选后文件里已经下载的部分数据怎么办
BitComet 会保留已经下载的数据块在磁盘上——不会自动删除。如果之后你又重新勾选了这个文件,BitComet 会从上次中断的地方继续(校验哈希后再决定哪些分片需要重新下载)。如果你想彻底清理,先从任务里取消勾选,然后删除整个任务、再手动删除磁盘上的对应文件。
优先级会不会违反 BT 协议
不会。BT 协议只规定了如何交换分片、如何校验哈希——客户端请求哪些分片、以什么顺序请求完全是客户端自己的策略。BitComet 的优先级机制只是改变了它向对等者请求分片的顺序,这是完全在 BT 协议规则之内的操作。其他客户端看不到、也不关心你用什么优先级。