Egy zárolt fájl egyszerű kicserélése, miután kinyitotta
Ha bizonyos Windows-fájlokat (például programokat vagy Word-dokumentumokat) frissítés közben próbál frissíteni, akkor a szabványos „hozzáférés megtagadva, a fájl használatban” hibaüzenet jelenik meg. Bár ennek az érvelése nyilvánvaló, elég bosszantó lehet, ha frissítenie kell egy kis végrehajtható fájlt, amelyet egy másik felhasználó használ. Ilyen helyzetekben többek között az alábbi lehetőségek közül választhat, amelyek mindegyike értékes időt vesz igénybe:
- Kövesse nyomon és lépjen kapcsolatba a felhasználóval, aki jelenleg használja a fájlt, mondja el nekik, hogy zárja be / mentse el a munkáját, stb., Majd alkalmazza a frissítést.
- Ne alkalmazza a frissítést azonnal, és ne feledje, hogy később, amikor a felhasználók nincsenek a rendszerben, ne felejtsük el.
- Tervezzen néhány segédprogramot a következő újraindításkor.
Nos, van egy másik megoldás is az Ön számára: egy olyan parancsfájl, amelyet a Küldés menü segítségével hív meg, amely a következőket teszi:
- Törli a régi fájlt.
- Ha a régi fájl zárolva van, a parancsfájl 20 másodpercet vár. Folytassák az 1. lépéssel.
- Ha a régi fájl nincs zárolva, a régi fájl helyébe az új fájl kerül. Folytassák a 4. lépéssel.
- Opcionálisan jelentkezzen ki a folyamat befejezése után.
Így kapja meg a helyettesítő parancsot a mozgásban, és a szkript gondoskodik a többitől. Ez segít elkerülni a felhasználók nyomon követését vagy a szükségtelen segédprogramok telepítését a rendszeren.
Beállítás és használat
A parancsfájl bárhol elhelyezhető a rendszeren. Ezután mindössze annyit kell tennie, hogy hozzon létre egy parancsikont a SendTo mappájában:
A helyettesítési folyamat elindításához válassza ki a régi fájlt és az új fájlt, majd a jobb gombbal kattintson a Küldés lehetőségre régi fájl / fájl cseréje.
A szkript pontosan megmutatja, hogy mi fog történni, és bemutatni fogja, hogy miután a csere befejeződött, jelentkezzen be.
A parancsfájl folyamatosan megpróbálja törölni a régi fájlt, miközben több másodpercet vár a kísérletek között.
Mindössze annyit kell tennie, hogy a folyamat fut, és ha minden felhasználó ki van kapcsolva, a fájl ki lesz cserélve.
biztosítéki
A szkriptnek van egy pár beépített biztosítéka:
- A régi fájl és az új fájl egyértelműen bemutatásra kerül, így pontosan tudja, mi fog történni.
- A művelet leállításához bármikor bezárhatja a parancsablakot (természetesen feltételezve, hogy a csere már nem történt meg).
- A parancsfájl biztosítja, hogy csak két fájlt választott ki, amikor meghívja a Küldés parancsot. Ha például 1 vagy 3 fájlt választ, akkor értesítést kap, és semmi sem fog történni.
A script
@ECHO OFF TITLE Zárolt fájl cseréje ECHO Csere zárolt fájl ECHO Írta: Jason Faulkner ECHO SysadminGeek.com ECHO. VISSZHANG. SETLOCAL EnableExtensions REM érvényesítés. SET Error = 1 IF % 2 == (ECHO Két fájlt kell kiválasztani a csere futtatásához. GOTO End) HA NOT % 3 == (ECHO Több mint 2 fájl lett kiválasztva, így nem vagyok GOTO End) SET Error = 0 SET OldFile = "% ~ f1" SET NewFile = "% ~ f2" SET LogOffWhenDone = 0 REM Mutassa meg, mi fog történni, így lehetősége van arra, hogy megszüntesse. ECHO régi fájl:% OldFile% ECHO --------- ECHO Új fájl:% NewFile% ECHO. ECHO Megszakíthatja a régi fájl helyettesítését az új fájl használatával. VISSZHANG. REM Jelentkezzen ki. Ha ezt nem szeretné látni, törölheti ezeket a sorokat. ECHO Automatikusan kijelentkezik, ha a csere folyamat befejeződött? ECHO Adja meg az 'Y' opciót, hogy automatikusan kijelentkezzen, vagy bármi mást ne írjon be. SET / P LogOffWhenDone =: DEL / F / Q% OldFile% NEM TÖRLÉS% OldFile% (MOVE% NewFile%% OldFile% ECHO fájl sikeresen kicserélve. GOTO End) ECHO. ECHO A régi fájl még mindig zárolva van. Várjon néhány percet, hogy újra megpróbáljon. TIMEOUT / T 20 GOTO DoReplace: Vége IF % Error% == 1 (ECHO használati utasítás: ECHO 1. Válassza ki a két fájlt a Windows Intézőben. ECHO 2. Kattintson jobb egérgombbal a régi fájlra, és küldje el a Küldés - A helyettesített zárolt fájl ECHO Az ECHO A jobb egérgombbal kattintott fájl helyébe a másik kiválasztott fájl kerül ECHO ECHO leállítása anélkül, hogy bármi mást megnyomna, a bezáráshoz nyomja meg bármelyik gombot TIMEOUT / T 15) IF / I % LogOffWhenDone% == Y (ECHO. ECHO opció a kijelentkezéshez, ha befejeződött a kiválasztás. ECHO Hamarosan kijelentkezik. SHUTDOWN / L) ENDLOCAL
linkek
Töltse le a ReplaceFile Script-et a SysadminGeek.com webhelyről