Batch – die besten Beiträge

Mögliche fehler?

moin, ich habe einen code für cmd geschrieben, der mir den archivierungsprozess erleichtern soll, er funktioniert und alles schön und gut, bloß dass - warum auch immer - im archivlaufwerk, leere ordner stehen und auf dem ursprungsdatenträger nach dem Löschen und umbenennen natürlich auch - da soll es aber auch so sein. nächstes problem: ich habe jetzt testordner erstellt um der sache auf den grund zu gehen und stelle fest dass nicht alle ordner leer sind, nur ein paar, aus meiner sicht zufällig ausgewählte.

set "quelle=I:\Ordner 1\Ordner 2\TestOrdner" & set "ziel=V:\Ordner 1\Ordner 2" & set "liste=C:\Users\*meinUser*\Documents\OrdnerListe.txt"

for /f "usebackq delims=" %N in ("%liste%") do (

  echo Verarbeite Ordner: %N  

  robocopy "%quelle%\%N" "%ziel%\%N" /E /COPY:DATSO /R:3 /W:10 /MT:8 /LOG+:kopierlog.txt

)

das ist der code schnipsel für das kopieren, bevor eine frage dazu kommt: nein, die verzeich isse sind nicht fehlerhaft, die sollen genau so sein wie sie dort sind.

das funktioniert einwandfrei und wenn man nach dem kopieren nachschaut sind auch alle verzeichnisse, unterverzeichnisse und dateien vorhanden.

set "quelle=I:\Ordner 1\Ordner 2\TestOrdner"

set "liste=C:\Users\*meinUser*\Documents\OrdnerListe.txt"

for /f "usebackq delims=" %N in ("%liste%") do (

  del /f /s /q "%quelle%\%N\*"

  for /d %U in ("%quelle%\%N\*") do rmdir /s /q "%U" 

  ren "%quelle%\%N" "%N - Archiv"

)

das is der code schnipsel für das automatische löschen der Inhalte der Unterordner (hier im beispiel der ersten Unterordner von "TestOrdner") und das dann anschließende umbenennen jener mit einer ergänzung "- Archiv"

die ordner die kopiert bzw gelöscht und umbenannt werden sollen stehen in dieser OrdnerListe.txt datei

kann mir bitte jemand sagen was ich da falsch gecoded haben könnte oder was cmd vllt falsch interpretiert? und dazu dann bitte gleich einen entsprechenden verbesserungs vorschlag?

achso, der code ist in 2 schnipseln damit der code weniger anfällig ist für fehler (ironischerweise), natürlich würde man ihn auch als einen einzigen ausführen können, wenn man es wollen würde

Batch, cmd, Code, Programmiersprache

Batch Set/p variable?

Kann mir Jemand Helfen ich möchte Folgendes tun: zuerst soll dass Batchscript aus Zwei Dateien 2 Passwortteile Nehmen und sie andersrum zusammenfügen, darauf soll dann der Benutzer dass Passwort Eingeben und Wenn es richtig ist soll er zur Sprung Marke TRUE_INPUT und wenn es Falsch ist zur Sprungmarke WRONG_INPUT aber wenn ich dass Skript starte Passiert folgendes: dort steht wie Gewollt Passwort: aber egal ob ich es richtig oder Falsch eingebe er springt immer zur Sprungmarke WRONG_INPUT und wenn ich danach die Tasten drücke steht dort: Test 1 und danach Test2!ich habe Getestet ob es funktioniert, Ich Weiß nicht woran es Liegt Ich hoffe ihr könnt mir Helfen! hier der Code:

:BECOME_DATA

for /f "tokens=1,2 delims==" %%A in (%FULL_PATH_WINDOW_PASS2%) do (

    set "key=%%A"

    set "value=%%B"

    if "!key!"=="PASSPART2" (

        set "PASSPART2=!value!"

    )

)

goto BECOME_DATA2

:BECOME_DATA2

for /f "tokens=1,2 delims==" %%A in (%FULL_PATH_WINDOW_PASS1%) do (

    set "key=%%A"

    set "value=%%B"

    if "!key!"=="PASSPART1" (

        set "PASSPART1=!value!"

    )

)

goto CREATEPASS

:CREATEPASS

SET CRYPTED_PASS=!PASSPART2!!PASSPART1!

Goto LASTLOADING

:LASTLOADING

cls

Color 02

SET TODO=Klicken sie zum fortfahren...

SET ACTIVITY=schritt 6/6

SET LOADPROGRESS=100

echo ==========================================

echo Laden erfolgreich. (Fortschritt:%LOADPROGRESS%)

echo (%TODO%) (%ACTIVITY%)

echo ==========================================

Color 03

echo druecken sie ENTER um Fortzufahren

pause >NUL

goto SETSETTINGS

:SETSETTINGS

Title %WINDOWTITLE% & %SHOW_LAUNCHER_PATH%

Color %STANDARD_COLOR%

mode con: cols=%MODE_COLS% lines=%MODE_LINES%

goto WINDOW_TEXT

:WINDOW_TEXT

Set /P PASSINPUT="Passwort: "

if "%PASSINPUT%"=="%CRYPTED_PASS%" (

    goto TRUE_INPUT

) else (

    goto WRONG_INPUT

)

:WRONG_INPUT

echo test1

pause

:TRUE_INPUT

echo test2

pause

Computer, Batch, cmd, batch-trick

Batch-Datei mit sichtbarem Stunden und Minuten Timer der per Tastendruck abgebrochen werden kann (zwei Routinen in einer Batch)?

ich brauche eine Batch.

Beim starten wird gefragt, in wievielen Stunden der PC in den Energiesparmodus wechseln soll.

Die VERBLEIBENDE Zeit sollte IMMER sichtbar sein und die STUNDEN /MINUTEN runterzählen.

Wenn der Timer abgelaufen ist, sollte der PC in den Energiesparmodus gehen.

Desweiteren will ich den Countdown jederzeit wieder abbrechen können um das Programm zu verlassen,

OHNE den PC in den Energiesparmodus zu versetzen..

Am besten wäre es, wenn ich beim Abbechen des Timers nur eine Taste,

zum Beispiel (X) drücken müsste, ohne enter...(Darf gerne, muss aber nicht sein).

Ich habe schon per KI versucht dies alles hinzubekommen, aber leider bleibt der Timer hängen bei der Abbrechen-Abfrage.

@echo off

mode con cols=77 lines=6

chcp 65001>nul

title Countdown zum Energiesparmodus

:start

cls

echo In wie vielen Stunden soll der PC in den Energiesparmodus wechseln?

set /p stunden=

set /a minuten=%stunden%*60

rem Energiesparoptionen auf Höchstleistung setzen

powercfg.exe /setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

:countdown

cls

echo Der PC wechselt in %stunden% Stunden und %minuten% Minuten in den Energiesparmodus.

set /a minuten=%minuten%-1

if %minuten% LSS 0 (

   set /a stunden=%stunden%-1

   set /a minuten=59

)

echo.

echo Drücken Sie 'x', um den Countdown abzubrechen.

set /p eingabe=

if "%eingabe%"=="x" goto :ende

if %stunden% EQU 0 && %minuten% EQU 0 (

echo Der Countdown ist abgelaufen. Der PC wechselt in den Energiesparmodus.

rem Energiesparoptionen auf Ausbalanciert setzen

powercfg.exe /setactive 381b4222-f694-41f0-9685-ff5bb260df2e

rundll32.exe powrprof.dll,SetSuspendState Sleep

goto :ende

)

timeout /t 60 >nul

goto countdown

:ende

echo Countdown abgebrochen.

rem Energiesparoptionen auf Ausbalanciert setzen

powercfg.exe /setactive 381b4222-f694-41f0-9685-ff5bb260df2e
bat, Batch, cmd, Batch-Datei

Meistgelesene Beiträge zum Thema Batch