Съдържание:
- Стъпка 1: Инсталиране на Python и зависимости
- Стъпка 2: Скриптът на Python
- Стъпка 3: Създаване на.exe
- Стъпка 4: Автоматично стартиране
- Стъпка 5: АКТУАЛИЗИРАНЕ НА 15 ЯНВРИ 2020 г. - Изтеглете програма
Видео: Синхронизиране на папки с Python: 5 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:49
Тази инструкция ще ви покаже как да поддържате две папки (и всички папки в тях) в синхрон, така че едната да е директно копие на другата. Идеален за архивиране на работа както локално, към облачен/мрежов сървър или USB устройство. Не е необходим опит с програмирането, за да завършите този урок. Моля, обърнете внимание, че това работи само с Windows, въпреки че процесът е подобен на Mac и Linux.
Имам стар компютър с Windows, който имам настройка, действащ като сървър за различни функции, една от които е евтино мрежово хранилище, което действа като медиен сървър и резервно копие на всички компютърни данни на семейството ми.
Тъй като цялото ми семейство обича да работи локално на своите компютри, имахме нужда от лесен начин за архивиране на данните ни редовно. Имах нужда и от начин да удвоя резервното копие чрез прилагане на RAID подход на два твърди диска на сървърния компютър. Също така не исках да плащам за никакъв софтуер (да, знам, че съм скъперник). В резултат на това целият безплатен софтуер има тенденция да идва с изскачащи прозорци или дори да забавя компютъра с дълги времена на синхронизация и голямо използване на процесора, което беше просто досадно.
Затова с малко усилие написах скрипт на python, който да синхронизира папките, от които всички се нуждаем. След това бих могъл да персонализирам и разпространявам това на семейството като изпълним файл, който бих могъл да настроя Windows да се изпълнява редовно във фонов режим. Потребителят на компютъра не трябваше да бъде по -мъдър.
Стъпка 1: Инсталиране на Python и зависимости
За да създадете програма за разпространение, трябва да инсталирате python на вашия компютър. За да направите това, следвайте уеб връзката тук https://www.python.org/downloads/ и превъртете надолу, докато намерите желаната от вас версия. Забележка: За съжаление, докато пишете модула pyinstaller, който ще използваме, все още не работи с python 3.8, така че ще трябва да използвате съвместима версия на python (3.5-3.7).
Следвайте инсталацията, като поставите отметка в квадратчето „Добавяне към ПЪТЯ“.
След като бъде инсталиран, отворете командния ред и инсталирайте необходимите модули на python, за да направите това, въведете следното и изпълнете всички подкани според изискванията:
pip install pyinstaller
pip install dirsync
Стъпка 2: Скриптът на Python
Скриптът е хубав и прост, само на два реда, копирайте и поставете следното в IDLE (инсталиран с Python) или бележник и запишете като „DirectorySync.py“:
от dirsync import sync
sync ('C: / FOLDER_A', 'E: / FOLDER_B', 'sync', purge = True)
Не забравяйте да промените двете папки по -горе с двете папки, които искате да синхронизирате. Двойната обратна наклонена черта се изисква в името на пътя, тъй като обратната черта е изходен знак в Python.
Първият ред импортира модула dirsync, който инсталирахме по -рано.
Вторият извършва синхронизирането. Първата папка е папката източник, а втората е целта, „синхронизирането“е указващо на функцията за синхронизиране какъв режим на синхронизиране да се приложи. Добавяне на purge = True казва на функцията да изтрие всичко в целевата папка, което вече не е в папката източник. Има и други опции, които могат да бъдат приложени в зависимост от вашите нужди.
Начинът, по който е конфигуриран по -горе, също ще синхронизира всички папки в папката от най -високо ниво. Това може да бъде спряно, ако е необходимо. Ако искате да синхронизирате повече от една папка от най -високо ниво, просто добавете още редове към кода си с функцията sync (). За повече опции и помощ вижте следната връзка:
pypi.python.org/pypi/dirsync/2.2.2
Стъпка 3: Създаване на.exe
За да създадем изпълнимия файл, сега трябва да се върнем към командния ред.
Въведете следното, като замените пътя на папката с маршрута до скрипта DirectorySync.py, който създаваме в последната стъпка:
pyinstaller -F -w C: /Route_to_your_folder/DirectorySync.py
В местоположението на папката на вашия скрипт на python това създава поредица от папки: _pycache_, build, dist и два други файла. В папката dist сега е файл, наречен DirectorySync.exe, изпълнявайки това, ще извърши синхронизирането във фонов режим. Този файл може да бъде разпространен както е на всеки и след това те могат да стартират синхронизация, без да се налага инсталирането на python на компютъра.
За да обясните какво се случва в BOLD текста, въведен в командния ред:
'pyinstaller' казва на компютъра да използва модула pyinstaller, който сме изтеглили по -рано
'-F' е опция, която казва на pyinstaller да генерира само един изпълним файл, а не поредица от папки, които също трябва да бъдат разпространени.
'-w' е опция, която казва на компютъра да не показва командния ред всеки път, когато изпълнява скрипта.
Пътят е пътят към скрипта на python.
За повече опции и помощ вижте връзката по -долу:
pyinstaller.readthedocs.io/en/stable/usage…
Стъпка 4: Автоматично стартиране
Вече сте готови да синхронизирате всички папки, без да се налага да копирате, поставяте и изтривате многократно, като кликнете два пъти върху изпълнимия файл. Но ние искаме да отидем още по -далеч от това и да накараме Windows да стартира процеса автоматично, така че не е нужно да се притеснявате.
За да направим това, ще използваме програмата Task Scheduler, която се доставя с Windows, този процес се основава на Windows 10, но е почти идентичен на други платформи на Windows.
- Отворете Планировчика на задачите от менюто "Старт".
- От дясната страна изберете „Създаване на задача“от менюто.
- Дайте му име и описание и в долната част се уверете, че е конфигуриран за правилната операционна система.
- В раздела „Тригери“създайте нов тригер, като кликнете върху „Ново“в долния ляв ъгъл, в новия изскачащ прозорец изберете желаната от вас конфигурация, избрах да започна задачата при Влизане и да повтарям всеки час, за да знам, че имам резервно копие на работата ми на всеки час. Щракнете върху OK.
- В раздела „Действия“създайте ново действие по същия начин. Действието, от което се нуждаем, е да стартираме програма, която е по подразбиране. Прегледайте изпълнимия файл, който създадохме по -рано, и изберете. ЗАБЕЛЕЖКА:- ако преместите изпълнимия файл след създаването на задачата, задачата и следователно синхронизирането няма да завърши.
- В раздела „Условия“премахнете отметката от настройките за захранване, така че да работи както от батерията, така и от щепсела.
- Щракнете върху OK и вече сте създали задачата си.
Рестартирайте компютъра и след известно време проверете местоположението на целевата папка и вижте дали синхронизирането е работило, имайте предвид, че ако имате голяма папка, синхронизирането може да отнеме известно време, за да копирате всички папки през първия път.
Това е урокът завършен, надявам се да ви е полезен, ако имате въпроси, уведомете ме.
Стъпка 5: АКТУАЛИЗИРАНЕ НА 15 ЯНВРИ 2020 г. - Изтеглете програма
Все още използвам тази програма, която ми послужи добре. Въпреки това често съм бил помолен от хора да направят еднократно синхронизиране на задания за различни папки ръчно и т.н. Затова реших да актуализирам този Instructable с връзка към програма, която създадох, за да свърша работата. Той осигурява потребителски интерфейс, така че хората да могат лесно да извършват една от задачите за синхронизиране. Програмата може да бъде изтеглена от Github.
Препоръчано:
Прост шкаф за папки: 4 стъпки
Simple Folder Locker: Здравейте всички, В тази инструкция ще направим прост пакетен файл, за да скрием лични файлове, папки и т.н., и да държим семейството, приятелите и колегите си далеч. програмиране, но смятам да публикувам още
Методи за синхронизиране на Arduino с Millis (): 4 стъпки
Методи за синхронизиране на Arduino с Millis (): В тази статия представяме millis (); функция и да я използва за създаване на различни примери за време. Нищо общо със синхронизаторите на устните … дано сте разпознали мили като цифров префикс за хилядни; това умножава u
Bluetooth светодиоди с контролиран смартфон (със синхронизиране на музика на живо): 7 стъпки
Bluetooth светодиоди с контролиран смартфон (със синхронизиране на музика на живо): Винаги съм обичал да изграждам неща, след като установих, че моето ново общежитие в колежа има ужасно осветление, реших да го подправя малко. *** ВНИМАНИЕ *** Ако изграждате този проект в същия мащаб като моята настройка, ще работите с прилично количество еле
Как да възстановите опциите за папки в контролния панел: 10 стъпки
Как да възстановите опциите за папки в контролния панел: Компютърният вирус е самовъзпроизвеждаща се изпълнима програма, която поврежда или дори унищожава файлове или дискове. Винаги заема дисково пространство, а понякога и основната памет. Има различни антивирусни програми, които могат ефективно да премахнат вируси като No
Синхронизиране на светулки: 7 стъпки (със снимки)
Синхронизиране на светулки: Питали ли сте се някога как стотици и хиляди светулки са в състояние да се синхронизират? Как работи това, че те могат да мигат всички заедно, без да имат вид шеф -светулка? Тази инструкция дава решение и показва