Skip to main content

Batch link files without modifying original files.

Project description

batchlink

pdm-managed Imports: isort Code style: black linting: pylint Ruff Flake8: checked

Packaging status

Batch link files without modifying original files.

Why

To solve the problem - Is there a way to rename files from a torrent and still be able to seed? If you are serving BT files on a media server like Jellyfin, you may want this.

Features

  • A CLI to easily batch link, rename, copy files.
  • An extensible library.

Examples

Create example files:

mkdir -p a b && touch a/0.log a/1.log a/1.txt a/2.txt

Create hard links in b/ pointing to all files in a/ with original file names:

[!NOTE] It's recommended to add option --dry-run to see what will happen at first.

$ batchlink -S a -d b '*' '{path}'
Create hard link b/0.log to a/0.log
Create hard link b/1.log to a/1.log
Create hard link b/1.txt to a/1.txt
Create hard link b/2.txt to a/2.txt

Only create links for log files:

$ batchlink -S a -d b '*.log' '{path}'
Create hard link b/0.log to a/0.log
Create hard link b/1.log to a/1.log

And rename to one-based numbering file names:

$ batchlink -S a -d b '*.log' '{num}.log'
Create hard link b/1.log to a/0.log
Create hard link b/2.log to a/1.log

Format replacement values:

$ batchlink -S a -d b '*.log' '{num:02}.log'
Create hard link b/01.log to a/0.log
Create hard link b/02.log to a/1.log

Absolute symbolic link, relative symbolic link, rename, copy:

batchlink -s -S a -d b '*.log' '{num:02}.log'
batchlink -sR -S a -d b '*.log' '{num:02}.log'
batchlink -r -S a -d b '*.log' '{num:02}.log'
batchlink -c -S a -d b '*.log' '{num:02}.log'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

batchlink-1.0.0.tar.gz (7.4 kB view hashes)

Uploaded Source

Built Distribution

batchlink-1.0.0-py3-none-any.whl (7.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page