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

X Zeichen am Anfang einer Textdatei entfernen (quasi Rand wegnehmen)

Frage Entwicklung Batch & Shell

Mitglied: Experiment626

Experiment626 (Level 1) - Jetzt verbinden

23.07.2014, aktualisiert 20:19 Uhr, 799 Aufrufe, 4 Kommentare

Hallo,
ich habe Textdateien, die einen linken Rand haben, sagen wir 10 Zeichen.
Das Dokument hat Absätze also auch Leerzeilen.

Ich hatte es etwas hinbekommen mit echo und :~10, aber immer wenn
die Lehrzeilen kamen, stand vom Echo dies ECHO ist eingeschlaftet (ON)
oder so ähnlich.
Die Leerzeilen sollen natürlich genauso wiedergegeben werden, der Rand
soll verschwinden.
Nun hatte ich hin und her gewurstet, jetzt hab ich nichts brauchbares mehr.

Die Dateien liegen immer im gleichen Ordner, tragen .txt und beginnen
alle gleich (Bef*.txt)

Für Euch ist das Problem vermutlich lachhaft, aber leider fehlt mir auf
Arbeit die Zeit, mich intensiver mit den Batch-Feinheiten zu beschäftigen.

Vielen Dank für Eure Hilfe.

Stitch
Mitglied: rubberman
LÖSUNG 23.07.2014, aktualisiert um 20:19 Uhr
Hallo Experiment626

Probier's mal so:
01.
@echo off &setlocal 
02.
for /f "delims=" %%i in ('dir /a-d /b Bef*.txt') do ( 
03.
  set "file=%%i" 
04.
  set "tmpfile=%temp%\%%~ni.tmp" 
05.
  setlocal EnableDelayedExpansion 
06.
  <"!file!" >"!tmpfile!" ( 
07.
    for /f %%j in ('type "!file!"^|find /c /v ""') do for /l %%k in (1 1 %%j) do ( 
08.
      set "line=" &set /p "line=" 
09.
      if defined line ( 
10.
        echo(!line:~10! 
11.
      ) else ( 
12.
        echo( 
13.
14.
15.
16.
  move /y "!tmpfile!" "!file!" 
17.
  endlocal 
18.
)
Bei mehrfachem Aufruf des Codes werden die Zeilen natürlich auch jedes mal um 10 Zeichen kürzer ...

Grüße
rubberman
Bitte warten ..
Mitglied: colinardo
LÖSUNG 23.07.2014, aktualisiert um 20:20 Uhr
Moin Stitch,
folgendes sollte auch hinhauen:
01.
@echo off &setlocal 
02.
for %%x in ("C:\Ordner\Bef*.txt") DO @( 
03.
	(for /f "tokens=1* delims=: " %%a in ('type "%%x" ^| findstr /n "^"') DO echo(%%b))>"%%~dpnx_korrigiert%%~xx" 
04.
)
Grüße Uwe
Bitte warten ..
Mitglied: Experiment626
23.07.2014 um 20:10 Uhr
Hallo rubberman,
vielen Dank für die rasche Hilfe.
Funktioniert tadelos, so wie es sein sollte.

Schönen Feierabend und nochmals danke.
Bitte warten ..
Mitglied: Experiment626
23.07.2014 um 20:18 Uhr
Hallo Uwe,
auch Dir vielen Dank für die schnelle Hilfe. Funktioniert an sich auch nicht schlecht, hat aber einen kleinen Schönheitsfehler.
Die Dokumente haben zum Teil Textelemente, die rechts ausgerichtet sind und links nichts am Anfang der Zeile stehen haben,
so dass hier die rechtsorientierten Elemente an den linken Anfang gezogen werden.

Das Script von rubberman hingegen macht es genau - aber ich werde auch Dein superkurzes Script in meine Sammlung aufnehmen.

Dir auch auch einen schönen Feierabend.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Batch & Shell
Powershell - In Textdatei suchen und ersetzen (1)

Frage von Raaja89 zum Thema Batch & Shell ...

Batch & Shell
gelöst Appx aus Image auslesen und entfernen (9)

Frage von Markus2016 zum Thema Batch & Shell ...

CPU, RAM, Mainboards
CPU Lüfter von CPU entfernen (6)

Frage von uridium69 zum Thema CPU, RAM, Mainboards ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (8)

Frage von SarekHL zum Thema DSL, VDSL ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...