| Crates.io | qbfrt |
| lib.rs | qbfrt |
| version | 0.3.2 |
| created_at | 2024-05-21 03:34:51.134529+00 |
| updated_at | 2025-05-19 05:24:20.912616+00 |
| description | Command line tool for working with qBittorrent's fastresume data |
| homepage | https://github.com/regulatedsyntax/qbfrt |
| repository | https://github.com/regulatedsyntax/qbfrt |
| max_upload_size | |
| id | 1246388 |
| size | 61,737 |
Command line tool for working with qBittorrent's fastresume data. Supports the experimental SQLite database and (soon) traditional .fastresume files.
queue-bee-fart
The qBittorrent SQLite database is still experimental. While it drastically improves start up times when you have many torrents, most tools that manipulate qBittorrent fastresume data do not support the new database. This tool prevents you from having to convert back to the .fastresume files to use those other fastresume tools.
With this tool you can:
Run qBittorrent tools that would normally require the BT_backup folder, such as cross-seeding tools
More functionality to come!
The application will look for the default qBittorrent data directory
containing the torrents.db file. This behavior can be changed by passing a path with
--data-dir /some/path/to/db
-p, --config-dir - Path to the qB local config directory (where torrents.db lives)
-d, --disable-backup - Disables the automatic torrents.db backup-o, --output-dir - Output directory for new files
-v, --verbose - Enables more verbose output--old-path - Existing save path or path fragment
--new-path to be provided--new-path - New save path or path fragment to replace existing path
--existing-path to be provided--use-unix-sep - Force using path slash "/" for updated paths--use-win-sep - Force using Windows separators "\" for updated paths--old-tracker - Existing tracker or URL fragment
--new-tracker to be provided--new-tracker - New tracker or URL fragment to replace existing tracker
--old-tracker to be provided--db-to-fastresume - Dumps the SQLite database to fastresume files
These assume the qBittorrent SQLite database lives in the default directory. ALWAYS CREATE A MANUAL BACKUP OF THE QBITTORRENT DATABASE BEFORE USING THIS TOOL!
Here the torrent is saved at ~/torrents/some/old/path/here. Running the following command
will result in the save path becoming ~/torrents/new/thing/here.
qbfrt -v --old-path /some/old/path --new-path /new/thing
Here the torrent is saved at D:\Downloads\torrents\some\old\path\here. Running the following
command will result in the save path becoming C:\torrents\some\old\path\here.
.\qbfrt -v --old-path "D:\Downloads" --new-path "C:\"
You can force updated paths to use a specific separator by passing --use-unix-sep or --use-win-sep.
This is useful if you want to update save paths for a different machine. Here the torrent is saved at
D:\Downloads\some\folder on a Windows machine and we are running the command on Linux. The new path
will still use Windows "\" path separators. Note you would have to escape the back slashes in bash.
qbfrt -v --old-path "D:\\Downloads" --new-path "C:\\" --use-win-sep
Here the torrent is saved at ~/torrents/some/old/path/here. Running the following command
will result in the save path becoming ~/torrents/old/path/here. Note: the trick is to flank
the old path with separators.
qbfrt -v --old-path "/some/" --new-path "/"
Here the torrent is saved at D:\Downloads\torrents\some\old\path\here. Running the following
command will result in the save path becoming /torrents/some/old/path/here.
qbfrt -v --old-path "D:\\Downloads\\" --new-path "/" --use-unix-sep
Here the torrent has the following trackers:
http://some.tracker:6969/trackerhttp://other.tracker:6969/trackerRunning the following command will result in the trackers becoming:
http://some.tracker:6969/trackerhttp://beans.tracker:6969/trackerqbfrt -v --old-tracker other --new-tracker beans
This will dump fastresume files from the database to a directory called /generated_fastresume_files.
qbfrt -v --db-to-fastresume -o /generated_fastresume_files
--existing-path /torrents/movie will
match both /torrents/movies and /torrents/movie-folder. Avoid using a single word, it will replace all instances
of it.target_save_path column. You can check the libtorrent_resume_data save path and tracker list, but first
you will have to convert the hex blob to text.Until I figure out how to compile cross-platform, you're going to have to do it yourself.
git clone https://github.com/regulatedsyntax/qbfrt.git
cargo build --release
mv /target/release/qbfrt /place/you/want/qbfrt
move ./target/release/qbfrt.exe C:/place/you/want/qbfrt.exe
git pull