Batch Datei für Checkdisk schreiben?

4 Antworten

@echo off
set /p drive=Laufwerkbuchstabe: 
chkdsk %drive% /f /r

Keine Ahnung ob das so funktioniert (Laufwerkbuchstabe mit Doppelpunkt eingeben). Das .bat File muss als Admin gestartet werden.

Für mehrere Laufwerke:

@echo off&setlocal enableDelayedExpansion
set /P "d=Laufwerksbuchstaben nacheinander eingeben: "
set "d=%d: =%"
set "d=%d:,=%"
set "d=%d::=%"
set "d=%d:.=%"
for /L %%i in (0,1,25) do (
    if "!d:~%%~i,1!"=="" goto fin
    chkdsk !d:~%%~i,1!: /f /r
)
:fin
echo Fertig
pause&exit

Die ganzen Ersetzungen (

set "d=%d: =%"
set "d=%d:,=%"
set "d=%d::=%"
set "d=%d:.=%"

) kannst du weglassen, wenn du die Laufwerksbuchstaben immer richtig eingibst, also zum Beispiel "FDC".

~Tim

Woher ich das weiß:
Hobby
@Echo off
set /p laufwerk="Laufwerksbuchstabe eingeben: "
chkdsk %laufwerk%: /f /r
44

Braucht nur entsprechende Berechtigung und der Laufwerksbuchstabe muss ohne ":" übergeben werden.

0
5

Vielen Dank! Kann man es auch so einstellen, das man mehrere Laufwerksbuchstaben eingeben kann die er mit chkdsk "behandeln" soll?

0
44
@ProntoProtox

Du kannst per set /p variable="Text zur Eingabeaufforderung" beliebig viele Parameter vom Nutzer setzen lassen. Ob man direkt mehrere Laufwerke an chkdsk übergeben kann, weiß ich nicht, würde ich aber eher bezweifeln. Das müsste dann mehrfach aufgerufen werden.

0

Batch Datei - Programm ausführen - Problem?

Hallo,

Ich möchte eine .exe ausführen per Batch. Diese Datei liegt aber auf einem anderen Laufwerk/Pfad.

Mit folgendem Befehl wird die Datei auch ausgeführt. Das Problem hierbei scheint, dass das Programm irgendwie nicht alles im Ordner lädt was es braucht um zu starten, es gibt eine Fehlermeldung aus.

  • start "" "E:\Daten\1\2\3\xyz.exe"

Wenn ich also vorher in das richtige Verzeichnis erst wechsele:

  • cmd /K cd /d "E:\Daten\1\2\3\"

und dann nur noch "xyz.exe" eingebe funktioniert es einwandfrei und das Programm lädt auch wunderbar. Woran das wohl liegt!?

Da ich das aber wo einbaue, soll es erst das richtige Verzeichnis wählen und dann die .exe ausführen. So wie es manuell auch funktioniert. Das soll nach einem "goto" ausgeführt werden.

Momentan sieht es einfach so aus:

  • :$programmstart
  • cmd /K cd /d "E:\Daten\1\2\3\"
  • xyz.exe
  • goto $START

Man kann den Pfad irgendwie bekannt machen, dass es so einfach wie firefox oder word unter c programme oder system gefunden wird, das möchte ich jedoch nicht.

Wie mache ich das? Es gibt bestimmt eine professionellere Lösung dafür und keine solch laienhafte Bastelei :p!

Danke

...zur Frage

Was möchtest Du wissen?