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

Zeilenumbruch nach 40 zeichen hinzufügen

Frage Entwicklung Batch & Shell

Mitglied: kunzibus

kunzibus (Level 1) - Jetzt verbinden

13.01.2015, aktualisiert 13:18 Uhr, 1127 Aufrufe, 4 Kommentare

Hallo Community,

ich lese von einem Zeitterminal die Stempeldaten aus. Die Datei heißt allebuchungen.txt. Wenn ich das ganze mit Notepad betrachte sind leider alle Zeichen in einer Wurscht im Textfile.
$B4463214817;08.01.15;13:45:47;001;000;$B4463214817;08.01.15;13:45:47;001;000;$B4463211302;08.01.15;14:13:39;001;000;$B4463217202;08.01.15;14:13:47;001;000;$B4463211695;08.01.15;14:22:44;001;000;$B4463211697;08.01.15;14:23:27;001;000;$B4463211827;08.01.15;14:24:18;001;000;$B4463211827;08.01.15;14:24:35;001;000;$B4463216516;08.01.15;14:24:40;001;000;$B4463216516;08.01.15;14:24:44;001;000;$B4463087152;08.01.15;14:25:30;001;000;$B4463213597;08.01.15;14:27:47;001;000;
Es soll aber so aussehen.
$B4463214817;08.01.15;13:45:47;001;000; 
$B4463214817;08.01.15;13:45:47;001;000; 
$B4463211302;08.01.15;14:13:39;001;000; 
$B4463217202;08.01.15;14:13:47;001;000; 
$B4463211695;08.01.15;14:22:44;001;000; 
$B4463211697;08.01.15;14:23:27;001;000; 
$B4463211827;08.01.15;14:24:18;001;000; 
$B4463211827;08.01.15;14:24:35;001;000; 
$B4463216516;08.01.15;14:24:40;001;000; 
$B4463216516;08.01.15;14:24:44;001;000; 
$B4463087152;08.01.15;14:25:30;001;000; 
$B4463213597;08.01.15;14:27:47;001;000;
Es soll also alle 40 Zeichen ein Zeilenumbruch eingefügt werden.

Wie kann ich ein Batchfile erstellen was in der Datei allebuchungen.txt alle 40 Zeichen einen Zeilenumbruch einfügt. Bitte um Tipps ich finde einfach keine Lösung.


Mit freundlichen Grüßen

kunzibus
Mitglied: 114757
13.01.2015, aktualisiert um 20:27 Uhr
Moin kunzibus,
kleines Powershell-Script
01.
$file = 'C:\temp\test.txt' 
02.
$text = gc $file | out-string 
03.
1..([math]::Floor($text.Length/39)) | %{$text = $text.Insert(($_*40)-1,"|")} 
04.
$text.Split("|") | set-content $file
Gruß jodel32
Bitte warten ..
Mitglied: kunzibus
13.01.2015 um 11:57 Uhr
Hi Jodel Danke für dein Script. Allerdings bin ich scheinbar zu doof dafür.

ich habe die datei alle buchungen.csv nach c:\temp\test.txt kopiert. dann habe ich eine convert.ps1 erstellt und deinen text hineinkopiert. Wenn ich nun die convert.ps1 ausführe komtm allerdings folgende fehlermeldung. Was mache ich falsch? Vielen Dank im voraus.




PS C:\Users\admin> Set-ExecutionPolicy Unrestricted

Ausführungsrichtlinie ändern
Die Ausführungsrichtlinie trägt zum Schutz vor nicht vertrauenswürdigen Skripts bei. Wenn Sie die Ausführungsrichtlinie
ändern, sind Sie möglicherweise den im Hilfethema "about_Execution_Policies" beschriebenen Sicherheitsrisiken
ausgesetzt. Möchten Sie die Ausführungsrichtlinie ändern?
[J] Ja [N] Nein [H] Anhalten [?] Hilfe (Standard ist "J"): j
PS C:\Users\admin> C:\Temp\convert.ps1
Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Insert" enthält.
Bei C:\Temp\convert.ps1:3 Zeichen:55

1..([int]($text.Length/40)-1) | %{$text = $text.Insert <<<< (($_*40)-1,"|")}

+ CategoryInfo : InvalidOperation: (Insert:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "Split" enthält.
Bei C:\Temp\convert.ps1:4 Zeichen:12

$text.Split <<<< ("|") | set-content $file

+ CategoryInfo : InvalidOperation: (Split:String) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound
Bitte warten ..
Mitglied: 114757
LÖSUNG 13.01.2015, aktualisiert um 18:57 Uhr
ah ok du hast noch Powershell 2.0 in dem Fall:
siehe Änderung oben
Bitte warten ..
Mitglied: kunzibus
13.01.2015 um 12:49 Uhr
Danke danke hat super funktioniert. Vieen dank jodel
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Outlook 2013 Kontaktname enthält japanische Zeichen

Frage von xbast1x zum Thema Microsoft Office ...

Java
gelöst Java vertrauenswürdige Webseiten hinzufügen (4)

Frage von Passwort zum Thema Java ...

Netzwerke
40 GBit-Switche mit MLAG VLAG (7)

Frage von Der-Phil zum Thema Netzwerke ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (35)

Frage von FA-jka zum Thema Windows 10 ...

LAN, WAN, Wireless
Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (15)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...

RedHat, CentOS, Fedora
Fedora, RedHat, Centos: DNS-Search Domain setzen (13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...