1g0r23
Goto Top

Variable in Batch-Ausgabe hinzufügen

Hallo,

habe wieder ein kleines Problem und benötige eure Hilfe.
Bisher habe ich folgenden Befehl:

FOR %%i IN (D:\Test\*.*) DO @echo %%~ni>>"C:\Zielordner.txt"


Funktioniert optimal, allerdings möchte ich, dass zusätzlich noch das Datum und die Uhrzeit des letzter Aufrufes der jeweiligen Datei angezeigt wird.

Habe es schon mit

FOR %%i IN (D:\Test\*.* \T:A) DO @echo %%~ni>>"C:\Zielordner.txt"

versucht, allerdings funktioniert das nicht...

Könnt ihr mir bitte helfen?


Gruß
Ig0r

Content-Key: 202951

Url: https://administrator.de/contentid/202951

Printed on: April 24, 2024 at 09:04 o'clock

Member: drifter
drifter Mar 07, 2013 updated at 13:31:40 (UTC)
Goto Top
Hallo Ig0r

So sollte es gehen:

for /f %%i in ('dir /b /ta "D:\Test\*.*"') do echo %%~ni, %%~ti>>"C:\Zielordner.txt"

Gruss
drifter
Member: 1g0r23
1g0r23 Mar 08, 2013 at 05:21:19 (UTC)
Goto Top
Hallo drifter,

Im Testordner sind zwei Dateien "Test heute" und "Test gestern".

Wenn ich den Befehl umschreibe und ausführe, dann steht in der erschaffenen Textdatei:

Test ,
Test ,


Oder habe ich da irgendwo einen Fehler drin?

for /f %%i in ('dir /b /ta "C:\Test\*.*"') do echo %%~ni, %%~ti>>"C:\BACTH\123.txt"

Gruß
Igor
Member: drifter
drifter Mar 08, 2013 at 07:46:22 (UTC)
Goto Top
Hallo Igor

Ah, sorry. Das Problem lag beim Leerzeichen. Ist nun angepasst:
for /f "tokens=* " %%i in ('dir /b /ta "C:\Test\*.*"') do echo %%~ni, %%~ti>>"C:\BACTH\123.txt"

Output bei mir:
Test Gestern, 08.03.2013 08:39
Test Heute, 08.03.2013 08:38

Gruss
drifter
Member: 1g0r23
1g0r23 Mar 08, 2013 updated at 08:31:22 (UTC)
Goto Top
Hallo Drifter,

test gerade noch etwas durch ;)

wie muss ich den befehl verändern, dass die Ausgabe so erscheint?

07.03.2013 06:28 0 Test Gestern,
08.03.2013 06:08 0 Test Heute,

mit:

for /f "tokens=* " %%i in ('dir /ta "C:\Test\"') do echo %%~ni, %%~ti>>"C:\Users\Lieboldr\Desktop\123.txt"

werden sämtliche andere Informationen vom Volumen usw auch mit aufgelistet.

Gibt es eine Möglichkeit, die Liste statt Namen nach Datum zu sortieren?

Gruß
Igor
Member: drifter
drifter Mar 08, 2013 at 09:18:55 (UTC)
Goto Top
Hallo Igor

Damit die Ausgabe stimmt, muss man es so anpassen:
for /f "tokens=* " %%i in ('dir /b /ta "C:\Test\"') do echo %%~ti 0 %%~ni>>"C:\Users\Lieboldr\Desktop\123.txt"

Sortieren kann ich den Output nicht, da es sich nicht um das Erstellungsdatum handelt.

Gruss
drifter
Member: 1g0r23
1g0r23 Mar 08, 2013 at 14:05:34 (UTC)
Goto Top
Hallo drifter,

also irgendwie will das nicht bei mir funktionieren.

wenn ich den befehl

for /f "tokens=* " %%i in ('dir /b /ta "C:\Test\"') do echo %%~ti - %%~ni>>"C:\Test\123.txt"

per batch ausführe, gibt er in der txt nur:

- Test 2
- Test

bei dem befehl:


for /f "tokens=* " %%i in ('dir /ta "C:\Test\"') do echo %%~ti - %%~ni>>"C:\Test\123.txt"

gibt er folgendes aus:
- Volume in Laufwerk C: hat keine Bezeichnung
- Volumeseriennummer: B842-E5A2
- Test
- 08.03
- 08.03
- 08.03.2013 14:56 0 Test 2
- 08.03.2013 14:56 0 Test
- 2 Datei(en), 0 Bytes
- 2 Verzeichnis(se), 12.927.377

irgendwie steh ich auf dem schlauch :/

Gruß
Igor
Member: drifter
drifter Mar 08, 2013 updated at 17:25:01 (UTC)
Goto Top
Hallo Igor

Sorry, ich habe das immer im selben Verzeichnis gestetet.
Jetzt müsste es klappen:

@echo off
set pfad="C:\Test\"
cd /d %pfad%
for /f "tokens=*" %%i in ('dir /b /ta %pfad%') do echo %%~ti 0 %%~ni>>"C:\Test\123.txt"


Gruss
drifter
Member: 1g0r23
1g0r23 Mar 08, 2013 at 19:50:46 (UTC)
Goto Top
Hallo drifter

vielen vielen Dank, es geht optimal.

werd jetzt die neu aufgezeigten Elemente in diesem Befehl auseinander nehmen, damit ich weis, wie sie überhaupt
miteinander kommunizieren face-smile

eine Frage noch nebenbei:
"/ta" also der letzte zugriff bezieht sich nur auf anwendungen oder?
wenn ich jetzt z.B. den letzten Aufruf (nicht Erstellen oder Kopieren) einer z.B. txt-Datei sehen möchte müsste ich "/TW" eingeben, oder?
mal testen...

Gruß
Igor