Olası çözüm
Bunu varsayarak:
- Zaten atanmış fiziksel bellekte bir RAM sürücüsü oluşturdunuz
R:
(başka bir harf de iyidir).
- Klasörü
C:\Folder1
daha hızlı erişim için RAM’de kullanılabilir yapmak
Folder1
yerel bir NTFS biçimli biriminde depolanır.
Değişiklikleri uygulama
- Erişebilecek tüm programları kapatın
Folder1
.
- Rename
Folder1
için Folder1.zTarget
(gerçek adı sürece durum farklı kadar önemli değildir).
Folder1.zTarget
RAM sürücüsüne kopyala ( R:
).
- İşaret adlı bir dizin bağlantı oluşturun .
Folder1
R:\Folder1.zTarget
Bundan sonra, C:\Folder1
gerçekte erişmekte olduğunuza her eriştiğiniz zaman RAM sürücüsünde ( R:\Folder1.zTarget
) depolanan verilerdir .
Geri döndürme
- Erişebilecek tüm programları kapatın
Folder1
(şimdi bir dizin bağlantı linki).
- İçindeki herhangi bir dosya
Folder1
değiştirilmişse, değişiklikleri korumak için Folder1.zTarget
RAM'dan ( R:
) diske ( C:
) kopyalayın .
- Adlı dizin bağlantı bağlantısını silin
Folder1
.
Folder1.zTarget
Geri adını değiştir Folder1
.
Toplu otomasyon
Adımların çoğu elle gerçekleştirilebilse de, dizin bağlantı bağlantıları oluşturmak için yerleşik bir yol yoktur, ancak komut satırı arayüzünden ( mklink
). Biz varken, tüm süreci otomatikleştirerek zaman kazanabiliriz.
Örnek komut dosyası
Kısa bir başlatma işleminden sonra, komut dosyası, adı özel soneki içeren bir klasör olup olmadığını kontrol eder. Ardından, folders
değişkende ayarlanan her klasör için değişiklikleri yukarıda açıklanan şekilde uygulayın veya geri alın - "tüm programları kapat" adımları hariç.
@echo off
set folders="C:\Folder1","C:\Some other\folder"
set suffix=zTarget
set ramdisk=R:
for %%G in (%folders%) do (
dir "%%~dpG" /a:d | find ".%suffix%" >nul
goto :check
)
:check
if "%errorlevel%"=="0" goto :revert
:apply
for %%G in (%folders%) do (
if exist "%%~G\" (
ren "%%~G" "%%~nG.%suffix%"
xcopy "%%~G.%suffix%" "%ramdisk%%%~pnG.%suffix%" /e /i /f /h /r /k /y /j
mklink /j "%%~G" "%ramdisk%%%~pnG.%suffix%"
echo.
))
goto :end
:revert
for %%G in (%folders%) do (
if exist "%%~G.%suffix%\" (
xcopy "%ramdisk%%%~pnG.%suffix%" "%%~G.%suffix%" /e /i /f /h /r /k /y /j
rd "%%~G"
ren "%%~G.%suffix%" "%%~nG"
echo.
))
:end
pause
exit /b