This package has been deprecated

Author message:

Use scoped @nikolay-borzov/torrent-clean

torrent-clean

1.6.0 • Public • Published

torrent-clean npm JavaScript Style Guide

CLI utility deletes files not listed in selected torrent. Useful when torrent is updated and some files have been removed.

Install

npm i -g torrent-clean

Usage

C:\Downloads\NaturePack\torrent-clean -t C:\torrents\nature-pack.torrent

gets files' paths from nature-pack.torrent and compares them with files from C:\Downloads\NaturePack\. Then files not presented in nature-pack.torrent can be deleted.

torrent-clean has tc alias.

Arguments

--torrent (or -t) - Torrent id (as described in webtorrent api)

  • Magnet URI (e.g. magnet:?xt=urn:btih:d2474e86c95b19b8bcfdb92bc12c9d44667cfa36)
  • Info Hash (e.g. d2474e86c95b19b8bcfdb92bc12c9d44667cfa36)
  • http/https URL to a torrent file
  • Filesystem path to a torrent file

--dir (or -d) - Path to directory with downloaded files

--version - Outputs the app version

Config files

torrent-clean allows specifying some parameters via config file (.torrent-cleanrc, .torrent-cleanrc.json, .torrent-cleanrc.yaml, .torrent-cleanrc.yml or .torrent-cleanrc.js). There are might be many files - torrent-clean will collect and merge all files up to root directory. The closer config to the directory is, the higher its priority

Parameter are:

  • ignore - an array of globs (picomatch) or filenames that will be excluded from the list of extra files.

API

cleanTorrentDir accepts options object:

{
  torrentId: '6a9759bffd5c0af65319979fb7832189f4f3c35d',
  // Directory to clean
  directoryPath: 'C:/Downloads/wallpapers/nature',
  // Do not delete files immediately. Instead return `deleteFiles` function
  dryRun: true,
  // Config with highest priority
  customConfig: { ignore: ['**/*\(edited\)*'] }
}
const cleanTorrentDir = require('torrent-clean')
 
const { extraFiles } = await cleanTorrentDir({
  torrentId: 'C:/Downloads/torrents/nature wallpapers.torrent',
  directoryPath: 'C:/Downloads/wallpapers/nature'
})
 
console.log('Removed', extraFiles)
const cleanTorrentDir = require('torrent-clean')
 
const { extraFiles, deleteFiles } = await cleanTorrentDir({
  torrentId: '6a9759bffd5c0af65319979fb7832189f4f3c35d',
  directoryPath: 'C:/Downloads/wallpapers/nature',
  dryRun: true,
  customConfig: { ignore: ['**/*\(edited\)*'] }
})
 
console.log('Removing', extraFiles)
 
await deleteFiles(extraFiles)

Known issues

  • Torrent files with names containing unicode characters (e.g. 𝗚𝗪𝗔 1.txt) cannot be parsed correctly.
  • Parsing torrent by hash can sometimes hang. It's better to pass path to torrent file.

Built with

Readme

Keywords

Package Sidebar

Install

npm i torrent-clean

Weekly Downloads

5

Version

1.6.0

License

MIT

Unpacked Size

18.8 kB

Total Files

11

Last publish

Collaborators

  • nikolay-borzov