Pagina principala » HOWTO » Înlocuiți cu ușurință un fișier blocat odată ce acesta devine deblocat

    Înlocuiți cu ușurință un fișier blocat odată ce acesta devine deblocat

    Dacă încercați să actualizați anumite fișiere Windows (cum ar fi programe sau documente de tip cuvânt) în timp ce acestea sunt în uz, obțineți eroarea standard "acces refuzat, fișier este în uz". În timp ce raționamentul din spatele acestui lucru este evident, poate fi destul de enervant dacă trebuie să actualizați un executabil mic care este în prezent utilizat de alt utilizator. În aceste situații, aveți, printre altele, următoarele alegeri, toate care vă preiau timpul prețios:

    • Urmăriți și contactați utilizatorii care utilizează în prezent fișierul, spuneți-i să închidă / salveze lucrarea etc. și apoi să aplice actualizarea.
    • Nu aplicați imediat actualizarea și nu uitați să o faceți mai târziu atunci când utilizatorii nu se află în sistem.
    • Programați un utilitar pentru al înlocui la repornirea următoare.

    Avem o altă soluție disponibilă pentru dvs.: un script pe care îl invocați prin intermediul meniului Trimiteți la, care face următoarele:

    1. Incearca sa stergi fisierul vechi.
    2. Dacă fișierul vechi este blocat, scriptul așteaptă 20 de secunde. Mergeți la pasul 1.
    3. Dacă fișierul vechi nu este blocat, vechiul fișier este înlocuit cu noul fișier. Mergeți la pasul 4.
    4. Opțional, deconectați-vă odată ce ați terminat procesul.

    În acest fel, veți obține comanda de înlocuire în mișcare, iar scriptul are grijă de restul. Acest lucru vă poate ajuta să evitați urmărirea utilizatorilor sau necesitatea instalării unor utilitare inutile pe sistemul dvs..

    Configurare și utilizare

    Scriptul poate fi plasat oriunde în sistem. Apoi, tot ce trebuie să faceți este să creați o comandă rapidă în dosarul SendTo:

    Pentru a începe procesul de înlocuire, selectați fișierul vechi și fișierul nou și apoi invoca opțiunea Trimitere la, făcând clic dreapta pe vechi fișier / fișier pentru a înlocui.

    Scenariul va afișa exact ceea ce se va întâmpla și vă va prezenta opțiunea de a fi deconectat după ce înlocuirea este finalizată.

    Scriptul va încerca în mod continuu să șterge fișierul vechi în timp ce așteaptă câteva secunde între încercări.

    Tot ce trebuie să faceți este să executați procesul și oricând sunt expediați toți utilizatorii, fișierul va fi înlocuit.

    Garanții

    Scenariul are câteva garanții construite:

    • Fișierul vechi și fișierul nou sunt prezentate în mod clar, astfel încât să știți exact ce se va întâmpla.
    • Puteți închide fereastra de comandă în orice moment pentru a opri acțiunea (desigur, presupunând că înlocuirea nu a fost deja efectuată).
    • Scriptul vă va asigura că ați selectat numai două fișiere atunci când invoca comanda Trimiteți la. Dacă selectați, de exemplu, 1 sau 3 fișiere, veți primi un mesaj de avertizare și nu se va întâmpla nimic.

    Scriptul

    @ECHO OFF TITLE Înlocuiți fișierul blocat ECHO Înlocuiți fișierul blocat ECHO Scris de: Jason Faulkner ECHO SysadminGeek.com ECHO. ECOU. SETLOCAL EnableExtensions Validarea REM. SETE Eroare = 1 Dacă % 2 ==  (ECHO Două fișiere trebuie să fie selectate pentru a rula înlocuirea.) END GOTO DACĂ NU % 3 ==  (ECHO Mai mult de 2 fișiere au fost selectate, Sigur, ce trebuie sa faci GOTO End) Eroare SET = 0 SET OldFile = "% ~ f1" SET NewFile = "% ~ f2" SET LogOffWhenDone = 0 REM Arata ce se va intampla pentru a avea sansa de a renunta. ECHO File vechi:% OldFile% ECHO --------- ECHO Fișier nou:% NewFile% ECHO. ECHO Puteți anula înlocuirea fișierului vechi cu fișierul nou închizând acum. ECOU. REM Log off prompt. Dacă nu doriți să vedeți acest lucru, puteți șterge aceste linii. ECHO Deconectați automat după terminarea procesului de înlocuire? ECHO Introduceți "Y" pentru a vă deconecta automat sau introduceți altceva pentru a nu. SET / P LogOffWhenDone =: DoReplace DEL / F / Q% OldFile% DACĂ NU EXIST% OldFile% (MOVE% NewFile%% OldFile% ECHO File înlocuit cu succes. ECHO Fișierul Vechi este încă blocat. Se așteaptă câteva momente pentru a încerca din nou. TIMEOUT / T 20 GOTO DoReplace: Sfarsit IF % Error% == 1 (ECHO Instructiuni de folosire: ECHO 1. Selectati cele doua fisiere din Windows Explorer: ECHO 2. Faceti click dreapta pe File Old si mergeti Send To - Înlocuiți fișierul blocat ECHO ECHO Fișierul pe care ați făcut clic dreapta va fi înlocuit cu alt fișier selectat ECHO ECHO Oprirea fără a face nimic Apăsați orice tastă pentru a închide TIMEOUT / T 15) IF / I % LogOffWhenDone% == Y (ECHO.) Opțiunea ECHO pentru deconectare după finalizare a fost selectată ECHO Veți fi deconectat în scurt timp SHUTDOWN / L) ENDLOCAL 

    Link-uri

    Descarcă ReplaceFile Script de la SysadminGeek.com