Korvaa helposti lukittu tiedosto, kun se avautuu

Sisällysluettelo:

Korvaa helposti lukittu tiedosto, kun se avautuu
Korvaa helposti lukittu tiedosto, kun se avautuu

Video: Korvaa helposti lukittu tiedosto, kun se avautuu

Video: Korvaa helposti lukittu tiedosto, kun se avautuu
Video: CS50 2014 - Week 7, continued - YouTube 2024, Saattaa
Anonim

Jos yrität päivittää tiettyjä Windows-tiedostoja (kuten ohjelmia tai sanakirjoja) niiden käytön aikana, saat standardin "käyttöoikeus kieltäytynyt, tiedosto on käytössä" -virhe. Vaikka tämä johtopäätös on ilmeinen, voi olla äärimmäisen ärsyttävää, jos haluat päivittää pienen suoritustiedoston, jota toinen käyttäjä käyttää tällä hetkellä. Näissä tilanteissa sinulla on muun muassa seuraavat valinnat, jotka kaikki vievät arvokasta aikaa:

  • Seuraa ja ota yhteyttä käyttäjiin, jotka käyttävät tiedostoa tällä hetkellä, kerro heille sulkemaan / tallentamaan työnsä jne. Ja päivittämään päivityksen.
  • Älä aseta päivitystä välittömästi, vaan muista tehdä se myöhemmin, kun käyttäjät eivät ole järjestelmässä.

  • Aikata jokin apuohjelma korvaamaan se seuraavalla uudelleenkäynnistyksellä.

No, meillä on toinen ratkaisu sinulle: skripti, jota vedät Send To -valikossa, joka tekee seuraavaa:

  1. Yritetään poistaa vanha tiedosto.
  2. Jos vanha tiedosto on lukittu, skripti odottaa 20 sekuntia. Siirry vaiheeseen 1.

  3. Jos vanhaa tiedostoa ei ole lukittu, vanha tiedosto korvataan uudella tiedostolla. Siirry vaiheeseen 4.
  4. Kirjaudu pois päältä, kun prosessi on suoritettu.

Tällä tavoin saat vain korvaavan komennon liikkeellä ja käsikirjoitus hoitaa loput. Tämä voi auttaa sinua välttämään käyttäjien seurantaa tai asentamaan tarpeettomia apuohjelmia järjestelmään.

Asennus ja käyttö

Skripti voidaan sijoittaa mihin tahansa järjestelmään. Sitten sinun tarvitsee vain luoda pikakuvake SendTo-kansioosi:

Image
Image

Voit aloittaa korvausprosessin valitsemalla vanhan tiedoston ja uuden tiedoston ja napsauttamalla sitten Lähetä-vaihtoehtoa napsauttamalla hiiren oikealla painikkeella vanha tiedosto / tiedosto korvata.

Skripti näyttää täsmälleen mitä tapahtuu ja antaa sinulle mahdollisuuden olla kirjautuneena pois, kun korvaus on valmis.
Skripti näyttää täsmälleen mitä tapahtuu ja antaa sinulle mahdollisuuden olla kirjautuneena pois, kun korvaus on valmis.
Skripti yrittää jatkuvasti poistaa vanhasta tiedostosta odottaen useita sekunteja kokeiden välillä.
Skripti yrittää jatkuvasti poistaa vanhasta tiedostosta odottaen useita sekunteja kokeiden välillä.
Sinun tarvitsee vain saada prosessi käynnissä ja aina, kun kaikki käyttäjät ovat poissa, tiedosto korvataan.
Sinun tarvitsee vain saada prosessi käynnissä ja aina, kun kaikki käyttäjät ovat poissa, tiedosto korvataan.

suojatoimia

Skripillä on pari sisäänrakennettua turvatarkastusta:

  • Vanha tiedosto ja uusi tiedosto esitetään selkeästi, jotta tiedät tarkalleen, mitä tapahtuu.
  • Voit lopettaa komentoikkunan milloin tahansa lopettaaksesi toiminnan (tietenkin, jos korvausta ei ole tehty jo).
  • Skripti varmistaa, että olet valinnut vain kaksi tiedostoa, kun kutsut Lähetä-komentoa. Jos valitset esimerkiksi 1 tai 3 tiedostoa, saat ilmoitussanoman, eikä mitään tapahdu.

Käsikirjoitus

@ECHO OFF TITLE Replace Locked File ECHO Replace Locked File ECHO Written by: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. SETLOCAL EnableExtensions REM Validation. SET Error=1 IF {%2}=={} ( ECHO Two files must be selected to run the replace. GOTO End ) IF NOT {%3}=={} ( ECHO More than 2 files were selected so I am not sure what to do. GOTO End ) SET Error=0 SET OldFile='%~f1' SET NewFile='%~f2' SET LogOffWhenDone=0 REM Show what will happen so you have a chance to cancel out. ECHO Old File: %OldFile% ECHO --------- ECHO New File: %NewFile% ECHO. ECHO You can cancel replacing the Old File with the New File by closing now. ECHO. REM Log off prompt. If you do not want to see this, you can delete these lines. ECHO Automatically log off once the replace process has completed? ECHO Enter 'Y' to automatically log off or enter anything else to not. SET /P LogOffWhenDone=:DoReplace DEL /F /Q %OldFile% IF NOT EXIST %OldFile% ( MOVE %NewFile% %OldFile% ECHO File replaced successfully. GOTO End ) ECHO. ECHO The Old File is still locked. Waiting a few moments to try again. TIMEOUT /T 20 GOTO DoReplace:End IF {%Error%}=={1} ( ECHO Instructions for use: ECHO 1. Select the two files in Windows Explorer. ECHO 2. Right click on the Old File and go Send To - Replace Locked File ECHO. ECHO The file you right clicked on will be replaced with the other selected file. ECHO. ECHO Stopping without doing anything. Press any key to close. TIMEOUT /T 15 ) IF /I {%LogOffWhenDone%}=={Y} ( ECHO. ECHO Option to Log Off when completed was selected. ECHO You will be logged off shortly. SHUTDOWN /L ) ENDLOCAL

Linkit

Lataa ReplaceFile Script SysadminGeek.comista

Suositeltava: