Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Batch, for Schleife funktioniert nicht im batch

Frage Microsoft Windows 7

Mitglied: hs42dmueller

hs42dmueller (Level 1) - Jetzt verbinden

16.11.2013 um 16:45 Uhr, 1719 Aufrufe, 7 Kommentare

Hallo, die folgende Batch Datei macht bei demr for schleife nichts.
Starte ich die For schleife in einem cmd window, tut Sie Ihren Dienst und hängt amn jede Datei im Verzeichnis X das Datum vor dem Extention.
Bin für jede Idee die Batch Datei zu retten dankbar.
Vielen Dank im Voraus für die Hilfe.
LG Dieter

c:
cd \x
set MEINDATUM=%date:~-2%%date:~3,2%%date:~0,2%%time:~0,2%%time:~3,2%%time:~6,2%
for %i in (*.*) do (
ren "%~ni%~xi" "%~ni_%MEINDATUM%%~xi"
Pause
)
Mitglied: Wooolf
16.11.2013, aktualisiert um 16:59 Uhr
Der Inhalt des Batch Files stimmt aufjedenfall. Fehler könnte allerhöchstens beim Ausführen des Files passieren. Teste doch deine Eingaben im cmd Fenster durch bevor du es als Batchfile testest.
Auch könntest du zum Analysieren mehr "Pause Befehle" zwischen die Befehle setzen. Somit finden wir heraus das der Fehler bei der ersten Zeile des for Befehls zu sein scheint.
Bitte warten ..
Mitglied: colinardo
16.11.2013, aktualisiert um 18:46 Uhr
Hallo Dieter,
du musst die Prozentzeichen der Variablen der FOR-Schleife für die Verwendung in einer Batchdatei verdoppeln:
01.
for %%i in (*.*) do @( 
02.
  ren "%%~i" "%%~ni_%MEINDATUM%%%~xi" 
03.
)
Grüße Uwe
Bitte warten ..
Mitglied: bastla
16.11.2013 um 17:09 Uhr
Hallo hs42dmueller und willkommen im Forum!

In einem Batch müssen die Laufvariablen mit doppelten Prozentzeichen geschrieben werden, daher (ungetestet):
01.
set MEINDATUM=%date:~-2%%date:~3,2%%date:~0,2%%time:~0,2%%time:~3,2%%time:~6,2% 
02.
for %%i in (C:\x\*.*) do ( 
03.
    ren "%%i" "%%~ni_%MEINDATUM%%%~xi" 
04.
    Pause 
05.
)
Grüße
bastla
Bitte warten ..
Mitglied: hs42dmueller
16.11.2013 um 18:07 Uhr
Auch die mit doppelten %% Zeichen versehe Datei tut es nicht.
Test in einer cmd windows lief mit einfachen % Zeichen positiv ab.
Hat noch jemand eine bessere Idee?
Betriebssystem Windows 7.
c:
cd \x
pause
set MEINDATUM=%date:~-2%%date:~3,2%%date:~0,2%%time:~0,2%%time:~3,2%%time:~6,2%
for %%i in (*.*) do (
ren "%%~ni%%~xi" "%%~ni_%MEINDATUM%%%~xi"
Pause
)
Bitte warten ..
Mitglied: hs42dmueller
16.11.2013 um 18:43 Uhr
Nach dem Tip mit der Pause habe ich noch ein wenig versucht.
Das folgende Script tut es dann.
Vielen Dank für die Unterstützung. LG Dieter
c:
cd \x
set MEINDATUM=%date:~-2%%date:~3,2%%date:~0,2%%time:~0,2%%time:~3,2%%time:~6,2%
for %%i in (*.*) do (
echo off
ren "%%~ni%%~xi" "%%~ni_%MEINDATUM%%%~xi"
)
Bitte warten ..
Mitglied: bastla
16.11.2013 um 18:53 Uhr
Hallo hs42dmueller!

Worin genau (außer im - an dieser Stelle - überflüssigen echo off) läge denn der Unterschied zwischen Deinen Versionen von 18:07 und 18:43?

Grüße
bastla

P.S.: Magst Du noch die passende Formatierung (als "Code") für Deine geposteten Schnipsel nachholen?
Bitte warten ..
Mitglied: hs42dmueller
17.11.2013 um 13:07 Uhr
Ich kann es auch nicht erklären, aber mit dem Echo Off macht dass Programm eine winzige Pause und dann funktioniert der Code.
Ich hatte vorher dort einen Pause Befehl gesetzt. Das war aber zu umständlich, wenn ich 100 Dateien umbenennen will. Mit dem Echo Off macht der Code dort jetzt eine mini Pause und dann funktioniert der Rename Befehl. Vielen Dank an Alle Antworten und bis zum nächsten Mal. LG Dieter
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Batch Schleife als FOR-SCHLEIFE (2)

Frage von mp2711 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Problem bei einer For Schleife (2)

Frage von Juergen42 zum Thema Batch & Shell ...

Batch & Shell
Batch: Variable Expansion in einer FOR-Schleife (9)

Frage von .Sessl zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...