Archiv verlassen und diese Seite im Standarddesign anzeigen : If zeilen bei Batch
IcE_FiGhTeR
28.08.2007, 12:26
Ich mache grade eine Bat fürs formatieren... Doch diese Bat soll mich fragen WELCHE Partetion ich formatieren soll. Wenn ich zb.: "C" eingebe das er die Partetion "C" auch formatiert und wenn "D" das er auch "D" formatiert....
Ist es möglich mit den "if" dingern da sowas zu machen? Also "if write C goto
format1" oder sowas ähnliches... Oder braucht man dafür anderen Befehlzeilenrefernzen?
Sry für die überschrift.... Mir ist nicht anderes eingefallen...
PLS Help
dominik70567
28.08.2007, 12:30
@echo off
set /p format=Welche Partition soll formatiert werden?
if format==C goto C
if format==D goto D
:C
format C:
pause > nul
exit
:D
format D:
pause > nul
exit
Bin mir net sicher aber so müsste es irgendwie gehn tests einfach mal ;)
Vllt kann hier einer noch korrigieren :roll:
ich hätte es so gemacht:
@echo off
set /p w=Welche platte formatieren?
if "%w%" == "c" goto c
if "%w%" == "d" goto d
:c
format c
pause
:d
format d
pause
ob es geht, ist fraglich, aber ich bin mir ziemlich sicher ;)
die pause hab ich rein gemacht, damit man es evtl. noch aufhalten kann, wenn man die patetion vertippt hat ;)
edit:
also der code von mir geht
da ist nur der bug drinnen, dass man von c nach d springt, aber ich glaub, dass kann man auch noch i-wie entbuggen
edit2:
@dominik70567, dein code dürfte nicht gehen
du hast die "" vergessen, und vor und hinter == keinen abstand ;)
desweiteren springt er bei dir nicht nach d
dominik70567
28.08.2007, 12:45
Ja das is bei mir auch passiert :D einfach hinter Pause bei dir exit setzen dann geht er raus ;)
Ja das is bei mir auch passiert :D einfach hinter Pause bei dir exit setzen dann geht er raus ;)
ok, dann dürfte mein code gehen
sehe edit beitrag :)
code:
@echo off
set /p w=Welche platte formatieren?
if "%w%" == "c" goto c
if "%w%" == "d" goto d
:c
format c
pause
exit
:d
format d
pause
exit
edit,
wenn du testen willst, ob es geht ohne deinen pc zu formatieren mach vor format c und d ein echo vor ;)
also z.B:
:c
echo format c
pause
exit
dann siehst du,dass es dahin springt ;)
hf
IcE_FiGhTeR
28.08.2007, 13:26
Thx leuts :)
ahja den bug kann man mit "goto" wegmachen :) thx :)
dominik70567
28.08.2007, 13:30
Thx leuts :)
ahja den bug kann man mit "goto" wegmachen :) thx :)
Ja klar kann man den mit goto wegmachen aber was bringts :roll:
@echo off
set /p w=Welche platte formatieren?
if "%w%" == "c" goto c
if "%w%" == "d" goto d
:c
format c
pause
goto end
:d
format d
pause
goto end
:end
exit
IcE_FiGhTeR
28.08.2007, 13:38
Das nach C nicht sofort D formatiert wird. THX nochmal^^ jetzt kann ich auch andere sachen erstellen :)
aber ich glaub, so geht es auch... -> noch nicht getestet ;)
@echo off
set /p w=Welche platte formatieren?
if "%w%" == "c" format c
if "%w%" == "d" format d
aber das mit goto finde ich besser ;)
f!l3st0rm
30.08.2007, 21:07
Verwende doch eine for-Schleife mit if-Abfrage:
Folgenden Code in eine Batchdatei schreiben:
@echo off
echo.
echo ...zu formatierende Partition eingeben...
echo.
set /P "u= "
for %%i in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do if "%u%" == "%%i" format "%%i:" /Q /FS:NTFS
exit
(oder noch einfacher per Variable).
@echo off
echo.
echo ...zu formatierende Partition eingeben...
echo.
set /P "u= "
format "%u%:" /Q /FS:NTFS
Ich würde das so machen:
@echo off
echo Formatieren
set /p a=Welche Partition soll formatiert werden?
if %a% == C goto :format1
if %a% == D goto :format2
if not %a% == C goto :Error
if not %a% == D goto :Error
:format1
cls
format c:
goto :end
:format2
cls
format d:
goto :end
:Error
echo Falsche Datenträgerbezeichnung angegeben!
pause
goto :end
:end
quit
Powered by vBulletin® Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.