
Инструмент командной строки для поиска и скачивания файлов в локальной сети без какого-либо центрального сервера
Инструмент командной строки для поиска и загрузки файлов в локальной сети без центрального сервера.
pip install iwant
Или, если скачиваете из исходников:
python setup.py install --user
Убедитесь, что у вас установлены следующие системные зависимости:
iWant.
Инструмент командной строки для поиска и загрузки файлов в локальной сети без центрального сервера.
Использование:
iwanto start
iwanto search <name>
iwanto download <hash>
iwanto share <path>
iwanto download to <destination>
iwanto view config
iwanto --version
Параметры:
-h --help Показать этот экран.
--version Показать версию.
start Запускает сервер iwant в вашей системе.
search <name> Поиск файлов в сети. Пример: iwanto search batman
download <hash> Загружает файл из сети.
share <path> Изменить общую папку.
view config Просмотр общей папки и папки загрузки.
download to <destination> Изменить папку загрузки.
Примечание: общая папка и папка загрузки не могут совпадать.
Запустите iwanto start (это запускает службу iwant).
Чтобы использовать такие функции, как поиск, загрузка, просмотр конфигурации и изменение конфигурации, откройте другой терминал и убедитесь, что сервер iwant запущен.
В Windows для запуска сервера требуются права администратора.
iwanto start

Введите имя файла ;) (P.S. Точное имя не требуется)
iwanto search <filename>
Пример:
iwanto search "slicon valey"

Чтобы загрузить файл, просто введите хеш файла, полученный после поиска.
iwanto download <hash of the file>
Пример:
iwanto download b8f67e90097c7501cc0a9f1bb59e6443

Измените общую папку в любое время (даже когда служба iwant запущена).
iwanto share <path>
Пример:
iwanto share /home/User/Movies/
В Windows используйте кавычки:
iwanto share "C:\Users\xyz\books\"

Измените папку загрузки в любое время.
iwanto download to <path>
Пример:
iwanto download to /home/User/Downloads
В Windows используйте кавычки:
iwanto download to "C:\User\Downloads"
iwanto view config
Как только программа запускается, она порождает демон выборов, демон мониторинга папок и демон сервера.
Демон выборов отвечает за следующие действия:
При запуске демона мониторинга папок выполняются следующие шаги:
Клиент iwant взаимодействует с демоном сервера, когда пользователь хочет:
Демон сервера получает команды от клиента iwant и обновления от демона мониторинга файлов и демона выборов:
leader change, инициируют отправку сервером информации о проиндексированных файлах/папках новому лидеру.file search, передаются лидеру, который выполняет нечёткий поиск по метаданным, полученным от других пиров, и возвращает список, содержащий (имя файла, размер, контрольную сумму).file download, передаются лидеру, который передаёт корневой хеш файла/папки вместе со списком пиров, у которых есть этот файл. затем инициирует процесс загрузки с пирами, указанными в списке.Все журналы находятся в ~/.iwant/.iwant.log или AppData\Roaming\.iwant\.iwant.log.
Если есть идеи, ошибки или нужны доработки, смело отправляйте мне PR :)
changing shared folder, инициируют демона сервера убедиться, что демон мониторинга папок проиндексировал новую папку, и после завершения индексации демон сервера обновляет лидера новой информацией о проиндексированных файлах/папках.