praegune kellaaeg 19.06.2025 05:49:33
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
warwas
HV Guru

liitunud: 06.07.2003
|
28.01.2009 11:54:48
.bat skript: kuidas saada faili sisu muutuja väärtuseks? |
|
|
Probleem siis pealkirjas juba mainitud. Oleks vaja saada ühe väikese üherealise textifaili sisu skripti muutujaks.
Guugeldamise tulemusena leidsin sellise lahenduse:
Command Prompti all asi töötab, kui aga masin flopi pealt üles lasta (proovitud nii w98 kui ka Vista boot diskiga) siis sellist muutujat üldse ei loodagi, väärtuse andmisest rääkimata.
Aru ma ei mõista, mida ma valesti teen...
Just-in-case räägiks ka taustainfo ära, mida ma üleüldse saavutada soovin.
Oleks vaja teha selline pooluniversaalne buutiv Ghost'i recovery cd. Oleks mul seal üks kataloog nimega IMG, kus sees oleks siis üks *.gho laiendiga image fail. Tahaks saavutada seda, et Ghost avaks selle image faili automaatselt. Kuna aga image faili nimi võib muutuda, siis tahaks vältida seda, et ma iga kord pean autoexec.bat'is seda faili nime muutma.
Senine mõttetöö on viinud mind selleni:
dir x:\img\*.gho /b > r:\dir.txt
set /p image=r:\dir.txt
ghost.exe -clone,mode=restore,src=x:\img\%image%,dst=1 -sure -fx |
R: ketas on lihtsalt üks väike ram-drive kuhu saan igasugust ajutist ködi kirjutada.
Selle dir.txt lahenudse teed läksin ma seetöttu, et mul ei onnestunud kuidagi seda "dir *.gho /b" väljundit otse sinna muutujasse suruda. On see muidu võimalik?
|
|
Kommentaarid: 247 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
3 :: |
224 |
|
tagasi üles |
|
 |
HacaX
HV Guru

liitunud: 22.01.2004
|
28.01.2009 12:15:11
|
|
|
FOR käsu poole vaata, tolle /F võti on suuteline failidest ridu lugema (IIRC otse muutujasse, ja kui ei olegi too väliste käskude poolt kasutatav siis saad ise teise muutujasse salvestama).
EDIT: vabanda, ei süvenenud probleemi korralikult. Asja annab väga lihtsalt ka ilma environmenti salvestatavate muutujateta lahendada, ajutise vahefaili kasutamisest rääkimata:
for %a in (x:\img\*.gbo) do ghost.exe -clone,mode=restore,src=%a,dst=1 -sure -fx |
BATis kasutamisel peavad protsendimärgid kahekordselt olema.
Sellel koodijupil on küll see kitsaskoht, et kui sul juhtub rohkem kui 1 GBO fail olema siis käiakse ka see/need läbi, aga IMO võib selline asi ka su enda leitud lahenduses ette tulla.
_________________ IMO & GPLed |
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
0 :: |
22 |
|
tagasi üles |
|
 |
warwas
HV Guru

liitunud: 06.07.2003
|
28.01.2009 16:53:34
|
|
|
Tänud!
Kiirustasin kohe sinu esimest ideed proovima ja nagu sai isegi pärast parandasid, siis see ei toiminud nii nagu vaja.
Ei tulnud kohe siia hädaldama, nokkisin ise edasi ja jõudsin sellise lahenduseni:
FOR %%G IN ('dir %cd-drive%:\img\*.gho') DO set image=%%G
%ramdrive%:\apps\ghost.exe -clone,mode=restore,src=%image%,dst=1 -sure -fx |
Toimib kah... kuigi see sinu teine variant on muidugi asjalikum.
Igatahes tänud õigele rajale aitamise eest!
|
|
Kommentaarid: 247 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
3 :: |
224 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|