Wie kann ich mit diesem Skript alle Befehle in einer .bat-Datei ausführen?

347
Mr One ZED

Ich habe einige Codes für eine bat-Datei zusammengestellt, um die Privatsphäre und Protokolldateien zu säubern und meinen Computer (Laptop und Desktop) neu zu starten oder herunterzufahren. Hier ist der Code:

@ECHO OFF  ipconfig /flushdns arp -a netsh interface ip delete arpcache  RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 255 RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 1 RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 2 RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8 RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 16 RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 32 RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 9  @ECHO off  :SelectOptions CLS ECHO Howdy %username% :  ECHO 1. Restart in 30   ECHO 2. Hibernate  ECHO 3. Force Shutdown  ECHO 4. Shutdown in 30 Seconds  ECHO 5. EXIT  :ExecSelectedOption  ECHO Hit a number [1-5] and press enter.  SET /P CHOICE=[1-5]  IF "%CHOICE%"=="1" GOTO shutdown -r -t 30 IF "%CHOICE%"=="2" GOTO shutdown -h IF "%CHOICE%"=="3" GOTO shutdown -f IF "%CHOICE%"=="4" GOTO shutdown -s -t 30 IF "%CHOICE%"=="9" GOTO quit 

Von oben sprechen die folgenden Codeabschnitte von unten nicht, wenn Sie die Zahlen [1-5] auswählen:

IF "%CHOICE%"=="1" GOTO shutdown -r -t 30 IF "%CHOICE%"=="2" GOTO shutdown -h IF "%CHOICE%"=="3" GOTO shutdown -f IF "%CHOICE%"=="4" GOTO shutdown -s -t 30 IF "%CHOICE%"=="9" GOTO quit 

Ich brauche Hilfe mit dem obigen Code, um zu funktionieren, wenn Sie die Zahlen auswählen (1-5). Nach dem Ausführen der bat-Datei wird die cmd-Eingabeaufforderung erst geschlossen, wenn die Reinigung aller Spuren abgeschlossen ist. Was ich brauche, ist, dass der Code wie oben beschrieben reagiert, so dass die Maschine nach dem Reinigen und Löschen je nach der gewählten Anzahl neu gestartet oder heruntergefahren werden kann.

Vielen Dank.

0
"goto" funktioniert nicht so, wie Sie denken. Hinweis: [goto] (http://ss64.com/nt/goto.html) - Weisen Sie ein Stapelverarbeitungsprogramm an, um zu einer beschrifteten Zeile zu springen. DavidPostill vor 6 Jahren 1
Nach dem, was David gesagt hat. Versuchen Sie `C: \> wenn 2 == 2 dir`<- Sehen Sie, wie eine if-Anweisung ausgeführt wird. So sollten Sie auch die Fehlerbehebung durchführen. Einfache Dinge ausprobieren. barlop vor 6 Jahren 0
Außerdem verwenden Sie niemals goto, um zu einem Label zu gelangen, sodass Sie Ihre Labels und gotos entfernen können. Ihre gotos sind einfach falsch und Ihre Etiketten sind überflüssig. barlop vor 6 Jahren 0
Offensichtlich sagen Sie alle, dass ein Noob wie ich an Urdu denkt, wenn meine Basissprache einfach ostafrikanisches Swahili ist. Kann mir bitte jemand helfen, wie die gesamte Codestruktur aussehen soll? Vielen Dank Mr One ZED vor 6 Jahren 0

0 Antworten auf die Frage