Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Textdatei editieren

Frage Entwicklung Batch & Shell

Mitglied: sabinchen

sabinchen (Level 1) - Jetzt verbinden

23.05.2007, aktualisiert 25.05.2007, 3418 Aufrufe, 6 Kommentare

Hallo.
Ich hoffe, mir kann jemand bei der Lösung eines kleinen Problems helfen.
Ich habe eine Textdatei (Name ist immer unterschiedlich).
Nun sollen in dieser Textdatei die ersten 12 Zeilen gelöscht werden.
Anschließend sollen von allen anderen Zeilen die jeweils ersten 16 Zeichen gelöscht werden.
Danach soll die editierte Textdatei wieder unter dem gleichen Namen gespeichert werden.
Ist das per Batchdatei möglich und wie erhält die Batchdatei den Namen der zu editierenden Textdatei?
Kann man evtl. die Batchdatei aus einer anderen Batchdatei aufrufen?

Danke für eure Hilfe.

Liebe Grüße von
Sabine
Mitglied: miniversum
23.05.2007 um 19:34 Uhr
Ist das die einzigste Datei in diesem Verzeichnis? Wenn ja dann gehts so (ungetestet):
01.
@echo off & setlocal enabledelayedexpansion 
02.
for /F "delims=" %%n in ('dir /b /a-D C:\verzeichnis\*.*') do set filename=%%n 
03.
if exist %filename%_temp del %filename%_temp 
04.
for /F "skip=12 delims=" %%t in ('type "%filename%"') do ( 
05.
set text=%%t 
06.
echo !text:~16!>>"%filename%_temp" 
07.
08.
del "%filename%" 
09.
ren "%filename%_temp" "%filename%"
miniversum
Bitte warten ..
Mitglied: sabinchen
23.05.2007 um 20:07 Uhr
Hallo miniversum.
Danke für die schnelle Antwort.
Die Batchdatei funktioniert tadellos.
Leider ist die zu editierende Datei aber nicht die einzigste im Verzeichnis.
Auch ist das Verzeichnis nicht immer das gleiche.
Gibt es eine Möglichkeit, trotzdem das Problem zu lösen?

Vielen Dank und liebe Grüße von
Sabine
Bitte warten ..
Mitglied: miniversum
23.05.2007 um 20:13 Uhr
Es gibt noch die möglichkeit das du die dateiimmer auf die Batch datei ziehst per drag & drop oder als parameter mitgibst.
Dann müstest du die Batch datei Folgendermasen abändern:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "filename=%~1" 
03.
if exist %filename%_temp del %filename%_temp 
04.
for /F "skip=12 delims=" %%t in ('type "%filename%"') do ( 
05.
set text=%%t 
06.
echo !text:~16!>>"%filename%_temp" 
07.
08.
del "%filename%" 
09.
ren "%filename%_temp" "%filename%"
miniversum
Bitte warten ..
Mitglied: Biber
23.05.2007 um 22:18 Uhr
Moin sabinchen,

willkommen im Forum.
Leider ist die zu editierende Datei aber nicht die einzigste im Verzeichnis
Es hätte auch gereicht, wenn es die einzige gewesen wäre..

@miniversum
Kleiner Verbesserungsvorschlag:
Die "beliebige" Drag &Drop-Datei kann mit oder ohne Laufwerk/Pfad-Angabe kommen.
Spätestens beim Rename wird aber als zweiter Parameter etwas OHNE Lw/Pfad gebraucht.
Ich würde daher mit eher mit Copy als mit Rename arbeiten.
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "filename=%~1" 
03.
Set "tempfile=%temp%\$%~nx1%" 
04.
if exist "%tempfile%" del "%tempfile%" 
05.
for /F "skip=12 delims=" %%t in ('type "%filename%"') do ( 
06.
set text=%%t 
07.
echo !text:~16!>>"%tempfile%" 
08.
09.
copy /y "%tempfile%" "%filename%" >nul
Grüße
Biber
Bitte warten ..
Mitglied: Biber
25.05.2007 um 11:27 Uhr
Moin sabinchen,

magst Du auch noch mal eine Rückmeldung schreiben?

Grüße
Biber

[Edit] Danke, sabinchen, für die schnelle Rückmeldung & Vrohe Vinxten![/Edit]
Bitte warten ..
Mitglied: sabinchen
25.05.2007 um 11:33 Uhr
Hallo Biber.
Sry, ich konnte vorhin erst die Batchdatei mit Deinen Änderungen testen, da ich gestern nicht zu Hause war.
Vielen lieben Dank nochmal dafür. Es funktioniert super.

Liebe Grüße von
Sabine
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

(1)

Tipp von Pedant zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
gelöst Excel VBA: Automatische Konvertierung von Textdatei (.txt) zu Exceldatei (.xlsx) (7)

Frage von Booster07 zum Thema Microsoft Office ...

Batch & Shell
gelöst Bestimmte Zeile einer Textdatei mit Batch auslesen (2)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

Batch & Shell
gelöst Erstellungsdatum vor jede Zeile einer Textdatei schreiben (5)

Frage von freakonaleash zum Thema Batch & Shell ...

Batch & Shell
gelöst Per Skript Ordner überwachen und Textdateien editieren und verschieben (4)

Frage von ThorstenL zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
Tipps für Router (ca. 100 clients, VPN) (18)

Frage von oel-auge zum Thema Router & Routing ...

TK-Netze & Geräte
Convert von TAPI auf CAPI gesucht (12)

Frage von StefanKittel zum Thema TK-Netze & Geräte ...