biffbaff
Goto Top

For f Skip Schleife soll txt files kopieren

Hallo zusammen,


ich habe schon in anderen Foren gelesen, dass die FOR /F Variante keine Wildcards enthaelt. Ich wuerde aber gerne die ersten 3 Zeilen aller Text Dateien eines Ordners loeschen und diese in einem anderen Ordner speichern. (Muss nicht unbedingt sein, koennen auch einfach nur veraendert werden)

Ich muesste jetzt die Datei (sind Zahlen) die in %%g zwischengespeichert sind als txt datei speichern.
Hat jemand eine Idee wie man das Problem loesen koennte!?

@echo off

setlocal enableextensions enabledelayedexpansion
set /a counterer=1
for %%a in ("C:\Users\%Username%\Desktop\conduct\*.txt") do (
echo %%a
for /f "skip=3 tokens=*" %%g in (%%a) do (
echo %%g
copy %%g "C:\Users\%Username%\Desktop\conducterei\conduct!counterer!.txt"
)
set /a "counterer+=1"
)
endlocal
pause


Greetz
BiffBaff

Edit: Es geht nur noch um das Speicherproblem, meine Text Datei sieht so aus:


0.37 0.85 0.44 1.2 1.2 1.5 0.41 0.41 2.2 0.095 0.92 0.92 0.032 1.9 1.4 0.67 0.62 0.78 0.095 0.031 0.8 2 1.7 1.1 1.5 0.42 0.99 0.52 1 0.72
1.9 1.6 1.2 0.078 0.3 0.89 2.9 1.7 0.27 0.21 0.47 1.3 0.87 0.65 0.16 0.86 0.25 0.61 0.15 1 0.87 0.29 0.42 0.054 0.85

Content-ID: 260060

Url: https://administrator.de/forum/for-f-skip-schleife-soll-txt-files-kopieren-260060.html

Ausgedruckt am: 05.04.2025 um 02:04 Uhr

BiffBaff
BiffBaff 16.01.2015 um 12:04:49 Uhr
Goto Top
Die ausgabe der %%g variable in der zweiten for Schleife ist ja nichts anderes als
Zahlen-Reihen. Es muss doch irgendwie moeglich sein diese Reihen untereinander in eine Text Datei zu speichern?

Greetz BiffBaff
bastla
Lösung bastla 16.01.2015 aktualisiert um 20:45:31 Uhr
Goto Top
Hallo BiffBaff!

Soferne Du tatsächlich nur von jeder Datei die Inhalte ab Zeile 4 in eine neue Datei im Ordner "C:\Users\%Username%\Desktop\conducterei" speichern wolltest, sollte eigentlich etwas in der Art genügen:
1
2
3
4
5
6
7
8
@echo off & setlocal enableextensions enabledelayedexpansion
set /a counterer=1
for %%a in ("C:\Users\%Username%\Desktop\conduct\*.txt") do (  
    echo %%a
    more +3 "%%a">"C:\Users\%Username%\Desktop\conducterei\conduct!counterer!.txt"  
    set /a counterer+=1
)
pause
Grüße
bastla