Mudah Gantikan Fail Berkunci Sebaik sahaja Ia Dikunci
Jika anda cuba mengemas kini fail Windows tertentu (seperti program atau dokumen perkataan) semasa ia sedang digunakan, anda akan mendapat ralat "akses yang ditolak, fail sedang digunakan". Walaupun alasan di sebalik ini jelas, ia boleh menjadi sangat menjengkelkan sekiranya anda perlu mengemas kini laku laku kecil yang sedang digunakan oleh pengguna lain. Dalam situasi ini, anda mempunyai, antara lain, pilihan berikut, yang semuanya mengambil masa berharga anda:
- Jejaki dan hubungi pengguna yang sedang menggunakan fail tersebut, beritahu mereka untuk menutup / menyimpan kerja mereka, dan sebagainya dan kemudian aplikasikan kemas kini.
- Jangan gunakan kemas kini segera dan hanya ingat untuk melakukannya kemudian apabila pengguna tidak berada dalam sistem.
- Jadualkan utiliti untuk menggantinya pada reboot seterusnya.
Nah, kami mempunyai penyelesaian lain yang tersedia untuk anda: skrip yang anda gunakan melalui menu Send To yang melakukan perkara berikut:
- Cuba memadam fail lama.
- Sekiranya fail lama dikunci, skrip menunggu 20 saat. Pergi ke langkah 1.
- Jika fail lama tidak dikunci, fail lama digantikan dengan fail baru. Pergi ke langkah 4.
- Opsyen log keluar apabila proses selesai.
Dengan cara ini, anda hanya mendapat arahan pengganti dalam gerakan dan skrip akan menjaga yang lain. Ini boleh membantu anda mengelakkan menjejaki pengguna atau perlu memasang utiliti yang tidak perlu pada sistem anda.
Persediaan dan Penggunaan
Skrip boleh diletakkan di mana sahaja pada sistem anda. Kemudian semua yang perlu anda lakukan ialah membuat jalan pintas ke dalam folder SendTo anda:
Untuk memulakan proses penggantian, pilih fail lama dan fail baru dan kemudian masukkan pilihan Send To dengan mengklik kanan pada fail lama / fail untuk menggantikan.
Skrip akan memaparkan dengan tepat apa yang akan berlaku dan membentangkan pilihan anda untuk dilog keluar apabila penggantian selesai.
Skrip akan terus memadam fail lama sambil menunggu beberapa saat di antara cuba.
Apa yang anda perlu lakukan ialah mendapatkan proses berjalan dan apabila semua pengguna anda keluar, fail akan diganti.
Perlindungan
Skrip ini mempunyai beberapa perlindungan yang dibina:
- Fail lama dan fail baru dibentangkan dengan jelas supaya anda tahu dengan tepat apa yang akan berlaku.
- Anda boleh menutup tetingkap arahan pada bila-bila masa untuk menghentikan tindakan (sudah tentu, dengan menggantikan penggantian itu belum dilakukan).
- Skrip akan memastikan anda telah memilih hanya dua fail apabila anda memanggil arahan Hantar Untuk. Jika anda pilih, contohnya, 1 atau 3 fail yang akan menerima mesej notis dan tiada apa yang akan berlaku.
Skrip
@ECHO OFF TITLE Gantikan Fail Dikunci ECHO Gantikan Fail Dikunci ECHO Ditulis oleh: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. Pengesahan REM EnableExtensions SETLOCAL. Kesalahan SET = 1 JIKA % 2 == (ECHO Dua fail mesti dipilih untuk menjalankan penggantian GOTO End) JIKA TIDAK % 3 == (ECHO Lebih daripada 2 fail dipilih jadi saya tidak pastikan apa yang perlu dilakukan. GOTO End) SET Error = 0 SET OldFile = "% ~ f1" SET NewFile = "% ~ f2" SET LogOffWhenDone = 0 REM Tunjukkan apa yang akan berlaku supaya anda mempunyai peluang untuk membatalkannya. Fail ECHO Lama:% OldFile% ECHO --------- ECHO Fail Baru:% NewFile% ECHO. ECHO Anda boleh membatalkan menggantikan Fail Lama dengan Fail Baru dengan menutup sekarang. ECHO. REM Log segera. Sekiranya anda tidak mahu melihatnya, anda boleh memadamkan baris ini. ECHO Secara automatik log off sekali proses penggantian telah selesai? ECHO Masukkan 'Y' untuk log masuk secara automatik atau masukkan apa-apa lagi kepada tidak. SET / P LogOffWhenDone =: DoReplace DEL / F / Q% OldFile% JIKA TIDAK ADA% OldFile% (MOVE% NewFile%% OldFile% Fail ECHO diganti dengan jayanya GOTO End) ECHO. ECHO Fail Lama masih dikunci. Menunggu beberapa saat untuk mencuba lagi. TIMEOUT / T 20 GOTO DoReplace: Akhir IF % Error% == 1 (Arahan ECHO untuk kegunaan: ECHO 1. Pilih dua fail dalam Windows Explorer ECHO 2. Klik kanan pada Fail Lama dan pergi Hantar - Ganti Fail Terkunci ECHO ECHO Fail yang anda klik di atas akan digantikan dengan fail yang dipilih yang lain ECHO ECHO Berhenti tanpa melakukan apa-apa Tekan sebarang kekunci untuk menutup TIMEOUT / T 15) IF / I % LogOffWhenDone% == Y (Pilihan ECHO untuk Log Keluar apabila selesai dipilih ECHO Anda akan dilog masuk sebentar. SHUTDOWN / L) ENDLOCAL
Pautan
Muat turun ReplaceFile Script dari SysadminGeek.com