11Aug
S největší pravděpodobností jste slyšeli o službách, jako je Dropbox, které se používají k synchronizaci souborů mezi více zařízeními. Co když však chcete provést tuto operaci na jednom počítači? Znamená to, že soubory, které mají stejný název souboru v synchronizaci v celém počítači tak, že když se změní jeden ze souborů, jsou všechny aktualizovány.
Tato funkce může být docela užitečná, zejména pro vývojáře nebo správce systému, kde je někdy potřeba kopírování souborů.
Jak to funguje
Předpokládejme, že jste webový vývojář, který v průběhu času sestavil hezkou kolekci funkcí JavaScriptu, které používáte ve všech webech, které udržujete. Při přidávání nebo vylepšování tohoto souboru Javascript( nazýváme jej "library.js") je aktualizována pouze aktuální kopie, kterou upravujete. To by znamenalo například, že pokud uděláte opravu nebo vylepšení chyby, musíte ji ručně použít i na složku zdrojového kódu ostatních webů.
Náš nástroj se pokouší vyřešit problém, že musí manuálně použít aktualizovaný soubor do každé zdrojové složky. Co dělá:
- Vyhledá všechny soubory se zadaným názvem( library.js) v určeném kořenovém adresáři( % UserProfile% \ Documents \ Web Sites).
- Pro všechny soubory s názvem library.js najde tento soubor, který byl naposledy modifikován, a zaznamenává jeho hodnotu hash.
- Všechny ostatní soubory s názvem library.js( nejedná se o nejnovější aktualizovanou kopii) pak mají porovnávanou hodnotu hashového souboru oproti poslednímu( určenému v předchozím kroku).
- Pokud jsou hodnoty hash souboru odlišné, nahrazuje příslušná kopie knihovny library.js naposledy aktualizovanou kopií.
Protože používáme hodnoty hash pro porovnání souborů, jsme ujištěni, že všechny nahrazené soubory jsou skutečně jiné než poslední kopie. Například, pokud byste měli spustit proces a byly provedeny 5 výměnných souborů, bezprostředně po spuštění procesu se nepodaří nahradit, protože hodnoty hash souboru jsou nyní totožné.Aktualizace
na nejnovější nástroj pro kopírování
Nástroj Update to New Tool Tool je upravená verze dávkového skriptu se stejným názvem( oba jsou k dispozici ke stažení pomocí odkazů v dolní části článku), která byla převedena do souboru EXEaby zahrnoval požadovaný nástroj Nirsoft HashMyFiles. Nástroj musí být spuštěn z příkazového řádku s určitými zadanými parametry. Pokud byste měli spustit soubor EXE dvojitým kliknutím, zobrazí se zpráva s uvedením tohoto.
Chcete-li použít aktualizaci na nejnovější kopii, můžete parametry zobrazit spuštěním "UpdateToNewestCopy /?", Který zobrazuje následující dialog:
Jediné požadované parametry jsou SourceFolder( např.% UserProfile% \ Documents \ Web Sites) a FileName.js).Funkci můžete však změnit přidáním dalších přepínačů, jak je popsáno výše.
Příklady
Následující příkaz by nalezl všechny soubory s názvem "Common.vb" ve složce "C: \ users \ jfaulkner \ documents \ Code Files", provedl výměnu, ale před přepisováním provedl zálohu aktuální kopieco vytváří horní obrázek tohoto článku):
UpdateToNewestCopy "C: \ users \ jfaulkner \ documents \ Code Files" Common.vb / B
Následující příkaz provádí stejnou vyhledávací akci jako výše, ale pouze zprávy o souborech,být nahrazen a ve skutečnosti provádět žádné operace souborů:
UpdateToNewestCopy "C: \ users \ jfaulkner \ documents \ Code Files" Common.vb / V
Předpokládejme, že existuje soubor s názvem "C: \ Config \ FilesToSearch.txt"následující obsah:
library.js
Common.vb
Následující příkaz by vyhledal ve složce mé dokumenty aktuálního uživatele a hlásil jakoukoli aktualizaci knihovny "library.js" a "Common.vb", ale ve skutečnosti by nebyloperace aktualizace:
UpdateToNewestCopy "% UserProfile% \ Documents" "C: \ Config \ FilesToSearch.txt" / L / V
Automatizace procesu
Tento proces je ideálním kandidátem pro automatizaci. Vytvořením naplánované úlohy( nic zvláštního nevyžaduje) se zadanými nastaveními a každodenním spuštěním /hourly/ každých 15 minut( v závislosti na vašich požadavcích) můžete synchronizovat soubory ve skutečném režimu nastavení a zapomenutí.
Stáhnout
Update na nejnovější kopírovací modifikovaný spustitelný formát
Aktualizacena nejnovější kopírování - zdrojové dávkové soubory( více příkazového řádku)