我已经安装了 rTorrent(和 ruTorrent)的种子箱,并且我正在尝试尽可能自动化......
目前,我已在 rtorrent.rc 中将完成的文件移至 ~/Download:
system.method.set_key = event.download.finished,move_complete,"execute=mv,-u,$d.get_base_path=,~/Download/;d.set_directory=~/Download/"
然后我有一个脚本可以将这些已完成的文件同步回我的家庭计算机......
我已将 ruTorrent 设置为将标签应用于 torrent,并且我想根据标签移动文件,而不是将它们全部移动到同一个文件夹。但我根本找不到任何文档。有很多为“常见任务”配置 rTorrent 的示例,但我无法用来推断如何检查标签,更不用说根据标签移动已完成的 torrent...
答案1
如果我没记错的话,ruT 标签位于 custom1 中,只需$d.custom1=
在完成事件处理程序中的正确位置使用即可。
顺便说一句,move_complete
它只是一个标识符,event.download.finished
您可以在源代码中找到它。
答案2
以下是引自这个博客:
# Add new method to get finished dir
system.method.insert = d.get_finished_dir,simple,"cat=[folder]/finished/,$d.get_custom1="
system.method.set_key = event.download.finished,move_complete,"d.set_directory=$d.get_finished_dir=;execute=mkdir,-p,$d.get_finished_dir=;execute=mv,-u,$d.get_base_path=,$d.get_finished_dir="`
第一行,system.method.insert,基本上是说每个 torrent 应该能够返回一个字符串,该字符串是
[folder]/finished/
torrent 标签的串联。因此带有标签的 torrenttvshows
将返回[folder]/finished/tvshows
。将第一部分更改为您想要的基本“完成的种子”目录。我还没有尝试过任何包含空格的目录,但我猜转义是可行的方法。第二行基本上表示 torrent 应该将其内部定义的目录设置为
get_finished_dir
返回的任何内容,然后创建该目录(如果该目录尚不存在),最后将 torrent 移动到同一目录。没有标签的种子将被放置在基本目录中。
带有与现有文件夹相对应的标签的种子将被移动到这些文件夹。
带有与尚不存在的文件夹相对应的标签的种子将具有为其创建的文件夹,然后它们将被移动到该文件夹。
我想指出的是,至关重要的是禁用Autotools 使用此技术时具有 AutoMove 功能。如果不禁用 AutoMove,将会导致错误“下载注册为已完成,但哈希检查返回未完成的块。”,实际上您将拥有文件的两个副本(不确定,只是可以创建到文件的逻辑链接)[文件夹]/完成/LABEL_NAME以及您在 AutoMove 中设置的任何位置。这也会导致 rTorrent 无法播种这些文件,并且 torrent 将被标记为已停止/暂停,如果您继续下载,它将再次下载到[文件夹]/完成/LABEL_NAME目录。