Hjemmeside » hvordan » IT Geek Hvordan lagre filer med samme navn i synkronisering

    IT Geek Hvordan lagre filer med samme navn i synkronisering

    Du har mest sannsynlig hørt om tjenester, for eksempel Dropbox, som brukes til å holde filer synkronisert på flere maskiner. Men hva om du vil utføre denne operasjonen på en enkelt maskin? Det vil si, behold filer som har samme filnavn synkronisert på tvers av maskinen slik at når en av filene endres, er de alle oppdatert.

    Denne funksjonaliteten kan være ganske nyttig, spesielt for utviklere eller systemadministratorer, der det er noen ganger nødvendig med duplisering av filer.

    Hvordan det fungerer

    Anta at du er en webutvikler som i løpet av tiden har satt sammen en fin samling Javascript-funksjoner som du bruker gjennom alle nettstedene du opprettholder. Når du legger til eller forbedrer denne Javascript-filen (la oss kalle det "library.js"), er bare den nåværende kopien du redigerer oppdatert. Dette vil for eksempel bety at hvis du gjør en feilretting eller forbedring, må du manuelt bruke den til hver av de andre kildemapsmappen din på andre nettsteder..

    Vårt verktøy forsøker å løse problemet med å måtte manuelt søke den oppdaterte filen til hver kildemappe. Hva det gjør:

    1. Søker etter alle filer med et spesifisert navn (library.js) i en spesifisert rotmappe (% UserProfile% \ Documents \ Web Sites).
    2. For alle filer kalt library.js, lokaliserer den den som ble modifisert sist og noterer sin fil hash verdi.
    3. Alle andre filer som heter library.js (som ikke er den nyeste oppdaterte kopien) har da sin fil hash verdi sammenlignet med den siste (bestemt i forrige trinn).
    4. Hvis filens hashverdier er forskjellige, erstattes den respektive kopien av library.js med den sist oppdaterte kopien.

    Fordi vi bruker hashverdier for å sammenligne filene, er vi sikre på at eventuelle filer som er erstattet, er faktisk annerledes enn den nyeste kopien. For eksempel, hvis du skulle kjøre prosessen og 5 filutskiftninger ble gjort, kjørte prosessen igjen umiddelbart etterpå, ville det ikke bli gjort noen erstatninger siden filen hash-verdiene er nå identiske.

    Oppdater til nyeste kopimaskin

    Oppdateringen til nyeste verktøyet for kopimaskin er en modifisert versjon av et batch script med samme navn (begge er tilgjengelige for nedlasting ved hjelp av koblingene nederst i artikkelen) som er konvertert til en EXE-fil for å inkludere den nødvendige Nirsoft HashMyFiles verktøy. Verktøyet må kjøres fra kommandolinjen med bestemte parametere angitt. Hvis du bare skulle kjøre EXE-filen ved å dobbeltklikke, får du en melding som indikerer dette.

    For å bruke Oppdater til nyeste kopi, kan du vise parameterne ved å kjøre "UpdateToNewestCopy /?" Som viser følgende dialog:

    De eneste nødvendige parametrene er SourceFolder (for eksempel% UserProfile% \ Documents \ Web Sites) og FileName (library.js). Du kan imidlertid endre funksjonaliteten ved å legge til flere brytere som beskrevet ovenfor.

    eksempler

    Følgende kommando vil finne alle filer som heter "Common.vb" i mappen "C: \ users \ jfaulkner \ documents \ Code Files", og utfører erstatningen, men gjør en sikkerhetskopi av gjeldende kopi før overskriving (denne utgangen er det som produserte topp bilde for denne artikkelen):

    UpdateToNewestCopy "C: \ users \ jfaulkner \ documents \ Kodefiler" Common.vb / B

    Følgende kommando utfører samme søkehandling som ovenfor, men det rapporteres bare om filer som ville bli erstattet og faktisk ikke utfører noen filoperasjoner:

    UpdateToNewestCopy "C: \ users \ jfaulkner \ documents \ Kodefiler" Common.vb / V

    Anta at det er en fil med navnet "C: \ Config \ FilesToSearch.txt" med følgende innhold:

    library.js
    Common.vb

    Følgende kommando vil søke i dokumentmappen min til den gjeldende brukeren og rapportere om eventuelle oppdateringer til "library.js" og "Common.vb", men vil ikke faktisk utføre noen oppdateringsoperasjoner:

    UpdateToNewestCopy "% UserProfile% \ Documents" "C: \ Config \ FilesToSearch.txt" / L / V

    Automatiserer prosessen

    Denne prosessen er en ideell kandidat for automatisering. Ved å opprette en planlagt oppgave (ikke noe spesielt nødvendig) med de angitte innstillingene og ha det kjørt daglig / time / hvert 15. minutt (avhengig av dine krav), kan du beholde filer synkronisert i sann sett-det-og-glem-det mote.

    nedlasting

    Oppdater til nyeste kopimodifisert kjørbart format

    Oppdater til nyeste kopi - kilde-batchfiler (mer kommandolinjeorientert)