Per Batch erste Zeile aus CSV Dateien löschen

Mitglied: sirOne

sirOne (Level 1) - Jetzt verbinden

17.02.2016, aktualisiert 15:31 Uhr, 3585 Aufrufe, 15 Kommentare

Hallo zusammen!

Ich suche ein Batch Script, mit dem ich aus sämtlichen CSV Dateien in einem Unterordner die erste Zeile entfernen kann.

Das Script liegt also z.B. in C:\Ordner und entfernt aus allen CSV Dateien in C:\Ordner\Unterordner jeweils die erste Zeile und überschreibt diese dann einfach wieder.

Wäre super, wenn mir dabei jemand behilflich sein könnte.

Lieben Gruß
One
Mitglied: sirOne
17.02.2016 um 12:53 Uhr


Diese Lösung habe ich hier im Forum gefunden, allerdings erhalte ich einen Syntaxfehler und finde nicht heraus warum (-:
Bitte warten ..
Mitglied: TlBERlUS
17.02.2016 um 13:07 Uhr
Hi,

nimm Powershell; Batch ist veraltet.

Bitte warten ..
Mitglied: sirOne
17.02.2016 um 13:22 Uhr
Hallo TlBERlUS,

vielen Dank für die Antwort! Da ich mich damit leider noch gar nicht auskenne und die batch Scripte wenigstens halbwegs verstehe wäre mir die Lösung schon lieber.
Ich wüsste gar nicht was ich mit deinem Code jetzt anfangen müsste (-:
Bitte warten ..
Mitglied: 126919
126919 (Level 1)
17.02.2016, aktualisiert um 13:23 Uhr
nimm Powershell; Batch ist veraltet.
Was sich dann aber auch auf eine Zeile abkürzen lässt ;-) face-wink
fk
Bitte warten ..
Mitglied: 126919
126919 (Level 1)
17.02.2016, aktualisiert um 13:35 Uhr
Das obige für eine Batch:

Bitte warten ..
Mitglied: sirOne
17.02.2016 um 13:43 Uhr
Ohne jetzt vermessen sein zu wollen, würde ich mich doch freuen falls mir jemand sagen könnte wieso das oben gepostete batch script nicht funktioniert. Es scheint alles zu gehen, bis auf die Umbenennen von %%a.tmp in %%a.

Dort könnte ich dann die Ordnernamen noch durch Variablen verändern etc.
Nebenbei bekomme ich das Script in Powershell auch noch nicht zum Laufen...
Bitte warten ..
Mitglied: Biber
LÖSUNG 17.02.2016, aktualisiert um 15:31 Uhr
Moin sirOne,

auch ich rate zum Umstieg auf Powershell, wenn ihr es im Unternehmen einsetzen dürft.

Der Vollständigkeit halber zu den Syntaxfehlern beim obigen CMD-Batch-Schnipsel:

- Zeile 03: der Schalter /e beim more ist überflüssig, verursacht aber keinen Fehler.
- Zeile 04: der zweite Teil Ren "%%a.tmp" "%%a" wird übersetzt zu Ren "C:\x\y\test1.csv.tmp" "C:\x\y\test1.csv"
Das verursacht den Fehler, denn der renameTo-Name beim REN darf keine Pfadangabe enthalten.

Ändere also, falls du den CMD-Batch verwendest, die Zeile 04 auf
del "%%a" && ren "%%a.tmp" "%%~na"

(ungetestet, nur biooptische Grobdiagnose)

Grüße
Biber
[Edit] Upps, gerade hast du danach gefragt, da war ich am tippseln...[/Edit]
Bitte warten ..
Mitglied: 114757
114757 (Level 4)
LÖSUNG 17.02.2016, aktualisiert um 15:31 Uhr
@Biber
Dateierweiterung nicht vergessen :-) face-smile
del "%%a" && ren "%%a.tmp" "%%~nxa"

Gruß jodel32
Bitte warten ..
Mitglied: sirOne
17.02.2016, aktualisiert um 14:05 Uhr
Vielen Dank Biber,

Unternehmen kann man sowieso nicht wirklich sagen (-:

Ich habe deinen Vorschlag jetzt geändert auf


da in deiner Version keine Dateiendung mehr enthalten war. Damit funktioniert es aber jetzt! Danke an alle (-:


Edit: Und da kam noch die "richtige" Lösung für die Dateiendung, auch dafür danke! (-:
Bitte warten ..
Mitglied: miniversum
18.02.2016, aktualisiert um 11:15 Uhr
Zitat von @TlBERlUS:

nimm Powershell; Batch ist veraltet.

OT:
Aber es läuft auf allen (Windows) Systemen.
Hier zumindest ist Powershell auf den meisten Rechnern nicht vorhanden.
Gerade bei so Sachen wie das hier kommen mit Lösungen in Powershell oft länger und/oder überdimensioniert vor (z.B. nutze Ich doch nicht Powershell nur um eine Datei umzubenennen).
Das ist so mein persönlicher Eindruck.
Bitte warten ..
Mitglied: TlBERlUS
18.02.2016 um 13:32 Uhr
Zitat von @miniversum:
Aber es läuft auf allen (Windows) Systemen.
Richtig, aber in nahezu allen Netzwerken sollte man mittlerweile Systeme verwenden, die Powershell installiert haben (IMHO)
Gerade bei so Sachen wie das hier kommen mit Lösungen in Powershell oft länger und/oder überdimensioniert vor (z.B. nutze Ich doch nicht Powershell nur um eine Datei umzubenennen).
warum nicht, die Befehle die du in eine Batch setzt, kannst du in nahezu allen Fällen auch in Powershell verwenden. Hinzu kommt, dass Powershell einfacher zu schreiben/verstehen ist. Außerdem übt das, wenn man die Powershell irgendwann doch brauchen sollte.
Das ist so mein persönlicher Eindruck.
Geht mir ähnlich :) face-smile
Bitte warten ..
Mitglied: 114757
114757 (Level 4)
18.02.2016, aktualisiert um 17:33 Uhr
Zitat von @miniversum:
Aber es läuft auf allen (Windows) Systemen.
Hier zumindest ist Powershell auf den meisten Rechnern nicht vorhanden.
Du verwendest noch Systeme älter als Vista X)?? Denn ab Vista ist es von Haus aus mit dabei.
Selbst XP lässt sich damit nachrüsten.
Gerade bei so Sachen wie das hier kommen mit Lösungen in Powershell oft länger und/oder überdimensioniert vor (z.B. nutze Ich doch nicht Powershell nur um eine Datei umzubenennen).
Was soll hier im Thread nur umbenannt werden? Mit der Powershell geht alles endlich in the box ohne dauernd mit Umwegen und Zusatztools hantieren zu müssen, denn mit dem NET-Framework steht einem eine komplette Programmiersprache zur Verfügung (c#-Code kompilieren und ausführen kein Problem, GUI kein Problem, etc. pp).

Wer nur auf Batch setzt hat in kommenden Windows Versionen verloren.
Nur wer noch keinen Kontakt mit der Powershell hatte meidet sie, ist wie immer... Wen einmal das PS-Fieber gepackt hat, der will keine Batch-Krücken mehr sehen.

Gruß jodel32
Bitte warten ..
Mitglied: miniversum
18.02.2016 um 20:10 Uhr
Ich habe nicht gesagt das es alte Windows Versionen sind. Ich sagte nur das es nicht vorhanden ist; absichtlich. Wir haben hier Rechner mit Mess- und Testsystemen. Da fahren wir eher die Politik nur das nötigste zu installieren. Deshalb haben wir auch Windows 8.1 ohne Powershell.

Das mit dem umbenennen wurde oben nicht erwähnt. Es war nur ein Beispiel einer einfachen Aufgabe für die ich Powershell zu überdimensioniert finde. Für andere Aufgaben die komplexer sind ist natürlich Powershell geeignetter oder VBS oder Python oder gleich ein Programm in C++.
Man wählt die Sprache nach den Bedürfnissen und nicht weil sie halt grade da ist.
Bitte warten ..
Mitglied: TlBERlUS
19.02.2016 um 08:45 Uhr
Zitat von @miniversum:

Deshalb haben wir auch Windows 8.1 ohne Powershell.
Es gibt Win 8.1 ohne Powershell?
Bitte warten ..
Mitglied: miniversum
19.02.2016 um 17:52 Uhr
Man kann ja auch bei windows 8 teile entfernen.
Bitte warten ..
Heiß diskutierte Inhalte
Netzwerkgrundlagen
Frage der anderen Art
NeuerleVor 1 TagFrageNetzwerkgrundlagen16 Kommentare

Hi an alle, Ich bin InformatikStudi. Habe Ende des Monats Klausur im Fach Netzwerke zu schreiben und komme gar nicht klar. Entweder ich bin ...

CPU, RAM, Mainboards
CPU Lüfter ausbauen
gelöst ben1300Vor 1 TagFrageCPU, RAM, Mainboards9 Kommentare

Hallo zusammen, ich habe mir damals einen Fertig PC gekauft. Ich würde gerne den Arbeitsspeichern austauschen, allerdings muss ich dafür - so wie es ...

Windows Userverwaltung
Account Aktivierung über VPN
Phill93Vor 1 TagFrageWindows Userverwaltung3 Kommentare

Hallo, ich muss mir für eine RDP Umgebung für einen Verein eine Lösung für die Account Aktivierung ausdenken. Meine Idee ist die folgende: 1. ...

Switche und Hubs
Suche Deutsche Sprachdatei für D-Link DGS-1210-24 D1 Switch
gelöst Oggy01Vor 1 TagFrageSwitche und Hubs8 Kommentare

Hallo, ich habe einen D-Link DGS-1210-24 Vers. D1 Switch bekommen und suche für diesen eine Deutsche Sprachdatei. Die Firmware ist auf dem aktuellen Stand ...

Soziale Netzwerke
Anzahl Postings auslesen
gelöst r2d2r3poVor 1 TagFrageSoziale Netzwerke13 Kommentare

Hallo, habe seit 2014 eine Fanpage und wir posten jeden Tag. Kennt jemand einen Weg wie man die Anzahl der Postings seit 2014 auslesen ...

Windows 10
Windows 10 Geschwindigkeitprobleme trotz viel mehr Gb Ram
Matthes88Vor 5 StundenFrageWindows 1021 Kommentare

Hallo ihr lieben aaaalso : Da mein neuer Arbeitsspeicher (32gb) von meiner alten Windows 7 version (max mit 8gb kompatibel) nicht angenommen wurde, habe ...

Windows 10
Lizenzfrage WDS mit Windows 10 OEM und E3 für Enterprise
noodellsVor 1 TagFrageWindows 107 Kommentare

Hallo Zusammen, ich habe mal eine generelle Lizenzfrage zum Thema WDS. Ich möchte mehrere PCs installieren, die schon vom Hersteller eine funktionierende Windows 10 ...

Video & Streaming
Videoaufnahme funktioniert nur bis zum ersten Reboot (0x80040217)
IllusionFACTORYVor 19 StundenFrageVideo & Streaming10 Kommentare

Ich nehme über eine Video-Software von einem USB-Hardware-Encoder Video auf. Das funktioniert exakt bis zum ersten Reboot - danach bekomme ich beim Starten der ...