Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Textdatei editieren

Frage Entwicklung Batch & Shell

Mitglied: sabinchen

sabinchen (Level 1) - Jetzt verbinden

23.05.2007, aktualisiert 25.05.2007, 3424 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 ..
Ähnliche Inhalte
Batch & Shell
gelöst Per Skript Ordner überwachen und Textdateien editieren und verschieben (4)

Frage von ThorstenL zum Thema Batch & Shell ...

Windows Server
Druckereigenschaften - Modell und Hersteller editieren (6)

Frage von manuel-r zum Thema Windows Server ...

Java
gelöst Textdatei in Array speichern (zeilenweise) (1)

Frage von Bruchsal zum Thema Java ...

VB for Applications
Import Textdatei von Dateiname aus Zelle (2)

Frage von grasihuepfer zum Thema VB for Applications ...

Neue Wissensbeiträge
Notebook & Zubehör

WOL bei HP Notebooks

(5)

Erfahrungsbericht von Henere zum Thema Notebook & Zubehör ...

LAN, WAN, Wireless

Neue Cisco Catalyst-Serie 9000

Information von Kuemmel zum Thema LAN, WAN, Wireless ...

Sicherheit

Millionen Euro in den Sand gesetzt?

(3)

Information von transocean zum Thema Sicherheit ...

Heiß diskutierte Inhalte
Windows 10
Netzwerkkarte schaltet sich erst nach dem Logon ein (21)

Frage von DerWoWusste zum Thema Windows 10 ...

Windows Server
Seit IP Umstellung DC DNS Fehler (17)

Frage von Yaimael zum Thema Windows Server ...

Weiterbildung
gelöst Fest angestellter Admin oder Systemhaus Admin mit Kundenbetreuung? (15)

Frage von Voiper zum Thema Weiterbildung ...

Netzwerke
Mobile Einwahl IPSec VPN von iPhone iPad T-Mobile zur Pfsense (15)

Frage von Spitzbube zum Thema Netzwerke ...