pilllllle
Goto Top

Brauche hilf bei einer batch Datei

hallo,

ich versuche mit Hilfe von einer batch- Datei eine bestimmt Zeile aus einer txt- Datei in eine neue zu kopieren.
für Hilfe wäre ich sehr Danckbar

Pilllllle

Content-Key: 375190

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

Printed on: April 19, 2024 at 02:04 o'clock

Mitglied: 136166
136166 May 26, 2018 updated at 20:47:28 (UTC)
Goto Top
Suchfunktion scheint hier wohl ein Fremdwort zu sein ...
Bestimmte Zeilen aus Batch auslesen?

Wohl zu viel Pilllllllen geschluckt was ...
Member: SeaStorm
Solution SeaStorm May 26, 2018 at 20:48:46 (UTC)
Goto Top
hi


@echo off

 setlocal ENABLEDELAYEDEXPANSION
 set line=2
 set c=0
 for /f "delims=" %%1 in ('type in.txt') do (  
   set /a c+=1 && if "!c!" equ "%line%" echo %%1% >> out.txt  
 )
kopiert die zweite zeile von in.txt nach out.txt
Member: Pilllllle
Pilllllle May 26, 2018 at 20:58:00 (UTC)
Goto Top
hahaha aber danke hab mich grad erst angemeldet
Member: Pilllllle
Pilllllle May 26, 2018 at 20:58:21 (UTC)
Goto Top
aber danke an alle
Mitglied: 77559
77559 May 26, 2018 at 22:00:21 (UTC)
Goto Top
SeaStorms Batch hat 2 mögliche Probleme

1. Der for /f Befehl unterdrückt in der Ausgabe leere Zeilen, die werden dann auch nicht mitgezählt.
2. Durch setlocal ENABLEDELAYEDEXPANSION werden Ausrufezeichen im Text gelöscht.

Die folgende Batchdatei verwendet Find zum Numerieren und
Findstr zum selektieren der gewünschten Zeile.
Diese Anordnung würde ein mögliches Zeichen ] in der ersten Spalte der Zielzeile unterdrücken.

@echo off
set line=5
for /f "tokens=1*delims=]" %%A in (  
'find /N /V "#+*" ^<in.txt^|findstr "^\[%line%\]"'  
) do >out.txt echo(%%B
Member: SeaStorm
SeaStorm May 26, 2018 at 22:09:05 (UTC)
Goto Top
batch ist insgesamt ###e für sowas. PS wäre da eigentlich das Mittel der Wahl
Mitglied: 77559
77559 May 26, 2018 at 22:13:53 (UTC)
Goto Top
Ack,
für Zeile 5 ist das hier einfacher
(gc .\in.txt)[(5-1)]|sc out.txt