Hirdetés

Új hozzászólás Aktív témák

  • brd

    nagyúr

    válasz LonGleY #33345 üzenetére

    Viszont arra is ügyelni kell, hogy a pendrive mindig ugyanazon az elérési úton legyen[...]

    Nem feltétlen, ha a mentőprogram tud menteni az aktuális elérési útra, akkor egyszerűen a ..-t (két pont, az aktuális könyvtár) kell megadni célnak (ha a pendrive-ról indul). Vagy ahhoz képest relatív útvonalat, pl. a \backup az aktuális drive főkönyvtárában lévő backup könyvtárba ment.

    Ha nem, akkor némi parancssori bűvészkedéssel megoldható, így kell kezdeni a futtatandó batchfile-t, ha az a pendrive-ról indul, és pl. az i: jó lesz célnak (ez lesz a fake betűjel):

    cd >%temp%\backuppath
    set /p backuppath=<%temp%\backuppath
    del >%temp%\backuppath
    set bpath=%backuppath:~0,3%
    subst i: %bpath%
    set backuppath=
    set bpath=
    backupprogram.exe
    subst i: /d

    Ha nem biztos, hogy szabad a betűjel, akkor így lehet találni egy szabad betűjelet (de ilyenkor a backupprogramnak kezelnie kell a környezeti változókat):

    for %%a in (D E F G H I J K L M N O P Q R S T U V W X Y Z) do CD %%a: 1>> nul 2>&1 & if errorlevel 1 set freedrive=%%a:
    backupprogram.exe
    set freedrive=

    Ez a freedrive nevű környezeti változóba beleírja az első szabad betűjelet, visszafelé nézve (tehát, ha pl. a Z: szabad, akkor Z: lesz a változó tartalma, ha az foglalt, de az Y: nem, akkor Y: lesz). Elindítja a backupprogramot, amelyben pl. a %freedrive%\backup (ha pl. a Z: szabad, akkor ez Z:\backup útvonalra oldódik fel) útra kell menteni.

Új hozzászólás Aktív témák