Top-Themen

Aktuelle Themen (A bis Z)

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

Aus mehreren .txt Dateien Zeilen bedingt löschen

Frage Entwicklung

Mitglied: Vully64

Vully64 (Level 1) - Jetzt verbinden

18.11.2010 um 14:55 Uhr, 6499 Aufrufe, 2 Kommentare

Ich möchte aus mehreren .TXT Dateien eines Verzeichnisses die ersten 4 Zeilen löschen, wenn eine Bedingung (erstes Wort in der ersten Zeile lautet "Zeitpunkt") erfüllt ist.

Ich habe mir viele verwandte Themen bereits angeschaut aber nichts passendes zur bedingten Abfrage gefunden. Diese ist jedoch wichtig, damit die Dateien nicht doppelt bearbeitet werden können.

Ich habe es mit der folgenden Batch versucht

@echo off
set path=P:utilUnxUtilsusrlocalwbin

FOR %%i IN (*.txt)do (
FOR /F "tokens=1" %%a IN ('sed -n "1p" "%%i"') DO set Wort=%%a
if %Wort% == "Zeitpunkt" then cat "%%i" | sed -e "1,4d" > "%%i".neu | mv "%%i".neu "%%i" )


bei der Ausführung erscheint keine Fehlermeldung aber die Dateien werden auch nicht verändert.
Der "set path" verweist auf die UnixUtils (für "sed" "cat" ...)

Ich habe das gleiche mit einem ShellSkript unter Linux hinbekommen, es muss aber aus Windows heraus aufgerufen werden (per Doppelklick im Explorer)

#!/bin/sh

#Script zum Löschen der ersten 4 Zeilen aus den Textdateien im Verzeichnis,
#wenn die erste Zeile das Wort "Zeitpunkt" enthält.
#Wichtig: Das Script muss im gleiche Verzeichnis liegen, in dem auch
#die zu beabeitenden Textdateien sind.


for i in ./*.txt;
do
if [ "$(sed -n '1p' "$i" | awk '{print $1}')" = "Zeitpunkt" ]; then
cat "$i" | sed -e '1,4d' > "$i".neu;
mv "$i".neu "$i";
fi
done

Es wäre toll, wenn mir jemand auf die Sprünge helfen könnte
Mitglied: bastla
18.11.2010 um 16:02 Uhr
Hallo Vully64!

Ungetestet (und nur mit Bordmitteln) etwa so:
01.
@echo off & setlocal 
02.
set "Verz=D:Dein Verzeichnis" 
03.
set "Krit=Zeitpunkt" 
04.
 
05.
pushd "%Verz%" 
06.
for /f "delims=" %%i in ('dir /b /a-d *.txt') do call :ProcessFile "%%i" 
07.
popd 
08.
goto :eof 
09.
 
10.
:ProcessFile 
11.
set /p Zeile1=<%1 
12.
echo "%Zeile1%"|findstr /b """%Krit%">nul || goto :eof 
13.
set "Bak=%temp%\%~1" 
14.
move %1 "%Bak%" 
15.
more +4 "%Bak%">%1 
16.
::del "%Bak%" 
17.
goto :eof
Solange die vorletzte Zeile nicht durch das Entfernen der Kommentarzeichen "::" aktiviert wird, bleibt die jeweilige Originaldatei im Verzeichnis %temp% als Sicherungskopie erhalten - bitte trotzdem zunächst mit Kopien testen ...

Grüße
bastla
Bitte warten ..
Mitglied: Vully64
18.11.2010 um 16:30 Uhr
Hallo bastla,

echt genial, genau so wollte ich das haben.

Vielen Dank

Vully64
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Mehrere txt Dateien einlesen und letzte Zeile löschen
gelöst Frage von THRILLERBatch & Shell1 Kommentar

Hallo Gemeinde, ich beschäftige mich mit folgendem Problem. Und zwar will ich aus einem Ordner mehrere Dateien einlesen und ...

Batch & Shell
Batch: Mehrere .txt Dateien zu einer zusammenfügen, dabei jeweils die erste Zeile löschen
gelöst Frage von v.piepmatzBatch & Shell5 Kommentare

Hallo, ich bin leider kompletter Neueinsteiger bzgl. batch-Dateien, suche jetzt aber eine Möglichkeit mehrere .txt Dateien, welche in einem ...

Batch & Shell
Batch: bestimmten string aus einer Zeile in txt löschen
Frage von Vit1985Batch & Shell4 Kommentare

Hallo, ich habe eine Textdatei und dort möchte ich einen bestimmten string löschen! Beispielzeile: Command: Hallo, wie Ich möchte ...

Batch & Shell
Batch um Zeichen aus erster und letzter Zeile einer TXT Datei zu löschen
Frage von Bobby0712Batch & Shell2 Kommentare

Hallo. Wie der Titel schon sagt suche ich eine möglichkeit wie ich aus einer TXT Datei aus der ersten ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 6 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 10 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware8 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...