Domača » kako » Enostavno zamenjajte zaklenjeno datoteko, ko se ta odklene

    Enostavno zamenjajte zaklenjeno datoteko, ko se ta odklene

    Če poskušate posodobiti določene datoteke sistema Windows (kot so programi ali dokumenti z besedami), medtem ko so v uporabi, dobite napako standardnega »zavrnjenega dostopa, datoteka je v uporabi«. Čeprav je razlog za to očiten, je lahko zelo moteč, če morate posodobiti majhno izvedljivo datoteko, ki jo trenutno uporablja drug uporabnik. V teh primerih imate med drugim naslednje izbire, od katerih vse prevzame vaš dragoceni čas:

    • Sledite uporabnikom, ki trenutno uporabljajo datoteko, in jim sporočite, naj zaprejo / shranijo svoje delo itd. In nato uporabijo posodobitev.
    • Ne uporabljajte posodobitve takoj in ne pozabite, da to storite pozneje, ko uporabniki niso v sistemu.
    • Načrtujte nekaj pripomočka, da ga zamenjate pri naslednjem zagonu.

    Za vas imamo na voljo še eno rešitev: skript, ki ga prikličete prek menija Pošlji na:

    1. Poskuša zbrisati staro datoteko.
    2. Če je stara datoteka zaklenjena, skript čaka 20 sekund. Pojdite na 1. korak.
    3. Če stara datoteka ni zaklenjena, se stara datoteka nadomesti z novo datoteko. Pojdite na 4. korak.
    4. Po končanem postopku se lahko odjavite.

    Na ta način boste dobili samo zamenjavo ukaz v gibanju in scenarij skrbi za ostalo. To vam lahko pomaga izogniti se iskanju uporabnikov ali namestiti nepotrebnih pripomočkov v vaš sistem.

    Namestitev in uporaba

    Skript se lahko namesti kjerkoli na vašem sistemu. Nato morate v mapi SendTo ustvariti bližnjico do nje:

    Postopek zamenjave zaženete tako, da izberete staro datoteko in novo datoteko in nato kliknete možnost Pošlji na, tako da kliknete z desnim klikom na stara datoteka / datoteka za zamenjavo.

    Skript bo prikazal točno to, kar se bo zgodilo, in vam predstavil možnost, da se odjavi, ko se zamenja.

    Skript bo nenehno poskušal izbrisati staro datoteko, medtem ko bo med poskusi nekaj sekund čakal.

    Vse kar morate storiti je, da izvedete postopek in kadar so vsi vaši uporabniki zunaj, bo datoteka zamenjana.

    Zaščitni ukrepi

    Skript ima nekaj vgrajenih zaščitnih ukrepov:

    • Stara datoteka in nova datoteka sta jasno predstavljeni, tako da točno veste, kaj se bo zgodilo.
    • Ukazno okno lahko kadarkoli zaprete in ustavite dejanje (seveda ob predpostavki, da zamenjava še ni bila izvedena).
    • Skript bo zagotovil, da ste izbrali samo dve datoteki, ko zaženete ukaz Pošlji. Če izberete na primer 1 ali 3 datoteke, boste prejeli obvestilo in nič se ne bo zgodilo.

    Scenarij

    @ECHO OFF TITLE Zamenjaj zaklenjeno datoteko ECHO Zamenjaj zaklenjeno datoteko ECHO Napisal: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. Potrditev REM SETLOCAL EnableExtensions REM. SET Error = 1 IF % 2 ==  (ECHO Dve datoteki morata biti izbrani za izvajanje zamenjave. GOTO End) ČE NE % 3 ==  (ECHO Več kot 2 datotek je bilo izbranih, zato nisem GOTO End) SET Error = 0 SET OldFile = "% ~ f1" SET NewFile = "% ~ f2" SET LogOffWhenDone = 0 REM Pokažite, kaj se bo zgodilo, tako da boste imeli možnost odpovedati. ECHO stara datoteka:% OldFile% ECHO --------- ECHO Nova datoteka:% NewFile% ECHO. ECHO Zamenjavo stare datoteke z novo datoteko lahko prekličete tako, da zdaj zaprete. ECHO. REM Odjavite se. Če tega ne želite videti, lahko te vrstice izbrišete. ECHO Samodejno se odjavi, ko se postopek zamenjave zaključi? ECHO Vnesite 'Y', da se samodejno odjavite ali vnesete kaj drugega. SET / P LogOffWhenDone =: DoReplace DEL / F / Q% OldFile% Če ne obstaja% OldFile% (MOVE% NewFile%% OldFile% ECHO datoteka je uspešno zamenjana. GOTO End) ECHO. ECHO Stara datoteka je še vedno zaklenjena. Počakajte nekaj trenutkov, da poskusite znova. TIMEOUT / T 20 GOTO DoReplace: End IF % Error% == 1 (ECHO Navodila za uporabo: ECHO 1. V raziskovalcu izberite dve datoteki. ECHO 2. Z desno miškino tipko kliknite na Old File in pojdite na Send To - Zamenjaj zaklenjeno datoteko ECHO. ECHO Datoteka, ki ste jo kliknili desno, bo zamenjana z drugo izbrano datoteko. ECHO. ECHO Zaustavitev brez opravljanja ničesar. Pritisnite katerokoli tipko, da zaprete. Y (ECHO. Možnost ECHO za odjavo, ko je bila končana, je bila izbrana. ECHO V kratkem boste odjavljeni. SHUTDOWN / L) ENDLOCAL 

    Povezave

    Prenesite skripto ReplaceFile iz SysadminGeek.com