If-Koubou

Korvaa helposti lukittu tiedosto, kun se avautuu

Korvaa helposti lukittu tiedosto, kun se avautuu (Miten)

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:

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 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.

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

@ ECO OFF TITLE Vaihda lukittu tiedosto ECHO Vaihda lukittu tiedosto ECHO Kirjoittanut: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. SETLOCAL EnableExtensions REM Validation. SET Error = 1 IF % 2 ==  (ECHO Kaksi tiedostoa on valittava suorittamaan korvaus. GOTO End) Jos ei % 3 ==  (ECHO valittiin yli 2 tiedostoa, joten en ole GOTO End) SET Error = 0 SET OldFile = "% ~ f1" SET Uusi tiedosto = "% ~ f2" SET LogOffWhenDone = 0 REM Näytä mitä tapahtuu, jotta voit peruuttaa. ECHO Vanha tiedosto:% OldFile% ECHO --------- ECHO Uusi tiedosto:% NewFile% ECHO. ECHO Voit peruuttaa vanhan tiedoston korvaamisen uudella tiedostolla sulkemalla nyt. ECHO. REM-uloskirjautuminen. Jos et halua nähdä tätä, voit poistaa nämä rivit. ECHO Kirjaudut automaattisesti automaattisesti, kun vaihdon prosessi on suoritettu? ECHO Anna "Y" kirjautumiseen automaattisesti tai anna jotain muuta. SET / P LogOffWhenDone =: DoReplace DEL / F / Q% OldFile% JOS OLET OLLUT% OldFile% (MOVE% NewFile%% OldFile% ECHO-tiedosto korvattiin onnistuneesti GOTO End) ECHO. ECHO Vanha tiedosto on edelleen lukittu. Odottaa muutama hetki kokeilla uudelleen. TIMEOUT / T 20 GOTO DoReplace: Lopeta IF % Error% == 1 (ECHO Käyttöohje: ECHO 1. Valitse kaksi tiedostoa Resurssienhallinnassa. ECHO 2. Napsauta hiiren kakkospainikkeella vanhaa tiedostoa ja siirry Lähetä - Vaihda lukittu tiedosto ECHO ECHO Oikealla klikkaamasi tiedosto korvataan toisella valitulla tiedostolla ECHO ECHO Pysähtyy tekemättä mitään Sulje painamalla mitä tahansa näppäintä TIMEOUT / T 15) IF / I % LogOffWhenDone% == Y (ECHO: n ECHO-vaihtoehdon kirjautumisen jälkeen, kun se on valittu ECHO: n kirjauduttua pian SHUTDOWN / L) ENDLOCAL 

Linkit

Lataa ReplaceFile Script SysadminGeek.comista