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

Batch um Zeichen aus erster und letzter Zeile einer TXT Datei zu löschen

Frage Entwicklung Batch & Shell

Mitglied: Bobby0712

Bobby0712 (Level 1) - Jetzt verbinden

21.10.2014 um 17:37 Uhr, 952 Aufrufe, 2 Kommentare

Hallo.
Wie der Titel schon sagt suche ich eine möglichkeit wie ich aus einer TXT Datei aus der ersten Zeile ein "-" (Bindestrich) entfernen kann. Der Rest der TXT Datei soll dabei nicht betrachtet werden. Nur die letzte Zeile wieder. Es geht um ein CNC Programm das sonst nicht von der Steuerung erkannt wird.
Bsp:

0 BEGIN PGM 0001-AT MM
1 FN 1: Q1 = +Q1 + +4
2 * - NUTENSTEIN-MS
3 CALL LBL 100
4 BLK FORM 0.1 Z X-1 Y-11 Z-20
5 BLK FORM 0.2 X+21 Y+1 Z+1
....
...
...
....
171 CYCL DEF 7.1 IX+1
172 CYCL DEF 7.2 IY-1
173 CYCL DEF 7.3 IZ+19,7
174 LBL 0
175 END PGM 0001-ATM

Also aus der ersten Zeile muss das Minus oder Bindestrich weg und aus der letzten Zeile ebenfalls.
Die Zeilen dazwischen natürlich nicht, denn das sind ja meine Koordinaten für die Bauteile.

Ich hoffe dass ihr mir helfen könnt. 2000 Programme von Hand ändern wäre sehr ärgerlich.....


Viele Grüße Daniel
Mitglied: TsukiSan
21.10.2014, aktualisiert um 19:08 Uhr
Hallo Bobby0712,

wenn es VBS sein darf, meinst du es in etwa so:
01.
Ein = "D:\CNC mit Datei.cnc" 
02.
Aus = "D:\CNC ohne Datei.cnc" 
03.
 
04.
Von = "-AT" 
05.
Nach = " AT" 
06.
 
07.
Set fso = CreateObject("Scripting.FileSystemObject") 
08.
fso.CreateTextFile(Aus).Write Replace(fso.OpenTextFile(Ein).ReadAll, Von, Nach) 
09.
 
10.
msgbox "Fertig"
Wenn dem so geht, dann mit einer Schleife halt alle Dateien in deinem Ordner entsprechend bearbeiten.
Gruss

Tsuki
Bitte warten ..
Mitglied: rubberman
21.10.2014 um 19:06 Uhr
Hallo Bobby0712, willkommen im Forum.

Als Batchcode etwa so (ungetestet):
01.
@echo off &setlocal  
02.
set "file=C:\datei.ext" 
03.
set "tmpfile=%temp%\file.tmp"  
04.
  
05.
setlocal EnableDelayedExpansion 
06.
for /f %%i in ('type "!file!"^|find /c /v ""') do set /a "count = %%i - 2" 
07.
<"!file!" >"!tmpfile!" ( 
08.
  set "line=" &set /p "line=" 
09.
  echo(!line:-=! 
10.
  for /l %%j in (1 1 %count%) do ( 
11.
    set "line=" &set /p "line=" 
12.
    echo(!line! 
13.
14.
  set "line=" &set /p "line=" 
15.
  echo(!line:-=! 
16.
17.
move "!tmpfile!" "!file!"
Der Code (wenn er denn für dich funktioniert) ließe sich auch erweitern, dass er alle Dateien eines Verzeichnisses verarbeitet.

Grüße
rubberman
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Batch & Shell
Ungewöhnliche Txt.Datei-Abfrage mit Batch (3)

Frage von DaTobsn zum Thema Batch & Shell ...

Webentwicklung
gelöst HTML Output in eine txt Datei mit VisualBasicScript (2)

Frage von coca22COCA zum Thema Webentwicklung ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...