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

TxT im UTF Format speichern

Frage Entwicklung Batch & Shell

Mitglied: Aldeeer

Aldeeer (Level 1) - Jetzt verbinden

25.03.2009, aktualisiert 10:01 Uhr, 5160 Aufrufe, 13 Kommentare

Hallo,

ich mach es kurz.
WIe kann ich per Batch Skript eine Ausgabe in UTF Format speichern? Bei mir wird es immer im ANSI gespeicht, wo ich mit den Sonderzeichern probleme bekomme beim Weiterbearbeiten.
Mitglied: godlie
25.03.2009 um 12:29 Uhr
Das kannst du getrost in die Tonne kicken
Die cmd shell kann kein UTF oder UNICODE.

Da wirst eher glück haben mit VBScript oder anderen Konsorten, evtl. AutoIT aber keine Garantie für die Auskunft.
Bitte warten ..
Mitglied: Aldeeer
25.03.2009 um 12:43 Uhr
Ich habe es befürchtet aber die offnung stirbt zu letzt.
Gibt es denn eine andere Möglichkeit dies zu ändern? Das System läuf schon und es soll batch sein.
Sonst muss ich halt die Sonderzeichen umwandeln....

Danke!

Gruß Aldeeer
Bitte warten ..
Mitglied: miniversum
25.03.2009 um 14:04 Uhr
Nur mal ne Idee so ins Blaue.
Mit vbs könnte das gehen.
Dann könntst du dir eine Temponäre vbs-Datei anlegen und diese als schreibbefehl in eine Datei nutzen. Also statt
echo bla >> Datei.txt
dann so:
writetofile.vbs "bla" "Datei.txt"
Aber für vbs gibts hier andere Experten.
Bitte warten ..
Mitglied: Biber
25.03.2009 um 14:36 Uhr
Moin alle,
Zitat von godlie:
Das kannst du getrost in die Tonne kicken
Die cmd shell kann kein UTF oder UNICODE.

Na ja, sooo würde ich es nicht ausdrücken....
Siehe beispielsweise die Hilfe zu cmd die letzten angezeigten Zeilen
>cmd /? 
Startet eine neue Instanz des Windows 2000-Befehlsinterpreters. 
 
CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF] 
    [[/S] [/C | /K] Zeichenfolge] 
 
/C      Führt den Befehl in der Zeichenfolge aus und endet dann. 
/K      Führt den Befehl in der Zeichenfolge aus und endet dann nicht. 
/S      Bestimmt Behandlung von Zeichenfolgen nach /C oder /K (siehe unten). 
/Q      Schaltet die Befehlsanzeige aus. 
/D      Deaktiviert die Ausführung von AutoRun-Befehlen von der Registrierung. 
/A      Ausgabe interner Befehle in eine Pipe oder Datei im ANSI-Format. 
/U      Ausgabe interner Befehle in eine Pipe oder Datei im UNICODE-Format. 
....
@Aldeeer
kannst Du bitte mal konkretisieren was Dein Begehr ist und wie/mit welchen Sonderzeichen Du Probleme bei welcher Verarbeitung hast?

Grüße
Biber
Bitte warten ..
Mitglied: Aldeeer
25.03.2009 um 14:54 Uhr
Also ich lese mit dem LogParser Daten aus Log Dateien aus.
Diese Daten werden in einer TxT gespeichert. Diese Textdatei bearbeite ich dann noch ein bissl per Batch und schreibe sie wieder hinein.
Danach nehm ich diese Datei und lese sie Zeilenweise aus und füge sie mit dem Befehl eventcreate in ein Eventlog ein.

In diesen Logs sind aber ä, ü, usw.. enthalten welche dann in der Ereignisanzeige nicht richtig dargestellt werden.
Ich hoffe mit der Erklärung könnt ihr was Anfangen.

Gruß Alter
Bitte warten ..
Mitglied: godlie
25.03.2009 um 15:42 Uhr
So jetzt nochmal langsam zum mitdenken:

Mit Batch / Cmd geht das nicht!
Bitte warten ..
Mitglied: miniversum
25.03.2009 um 21:08 Uhr
mit
chcp 1252
kannst du die Codepage umschalten. Dann werden auch äöü und so weiter "richtig dargestellt".
Bitte warten ..
Mitglied: Aldeeer
25.03.2009 um 22:01 Uhr
Danke ich werde es Morgen gleich mal einbauen und mein Glück versuchen.

Schönen Abend noch

Gruß Aldeeer
Bitte warten ..
Mitglied: Aldeeer
26.03.2009 um 08:42 Uhr
Bringt leider auch nicht die Lösung. Aber ma was anderesbevor ich es lasse damit mit godlie srecht hat.
Wenn ich mit dem Befehl eventcreate ein Event erzeuge mit ä ü etc... nur auf der cmd, werden alle zeichen richtig Dargestellt. Sobald ich dies in eine Bach einbau und diese laufen lasse wird es halt nicht richtig Codiert.
Kann das einer erklären?

Gruß Aldeeer
Bitte warten ..
Mitglied: miniversum
26.03.2009 um 17:43 Uhr
Da verweiße ich jetzt auf mein Posting weiter oben. Gleicher Effekt:
Bitte warten ..
Mitglied: bastla
26.03.2009 um 18:22 Uhr
... oder zum Ausprobieren:

Inhalt der Logdatei (ANSI):
Übliche Maßnahme durchgeführt.
Batch:
01.
@echo off & setlocal 
02.
for /f "tokens=2 delims=:." %%i in ('chcp') do set "CP=%%i" 
03.
chcp 1252>nul 
04.
for /f "delims=" %%i in (D:\Logdatei.txt) do eventcreate /T INFORMATION /ID 999 /D "%%i">nul 
05.
chcp %CP%>nul
Grüße
bastla
Bitte warten ..
Mitglied: Aldeeer
27.03.2009 um 00:23 Uhr
Guten spät Abend,

Ok werde ich Probieren am Dienstag bastla. Eher wird es leider nicht. Aber was anderes bzw ein andere Ansatz.
So wie ich mich Informiert habe liegt der Zeichensatz bei DOS wo anders als bei Windows. Batch ist ja DOS und die cmd wird im Windows ausgeführt.
Ich wollt mal Probieren einfach die Zeichen zu Filtern und diese dann per Ascii Code anders Darstellen.
Was haltet ihr davon?

Gruß Aldeeer
Bitte warten ..
Mitglied: bastla
27.03.2009 um 07:50 Uhr
Hallo Aldeer!
liegt der Zeichensatz bei DOS wo anders als bei Windows. Batch ist ja DOS und die cmd wird im Windows ausgeführt.
... bzw etwas exakter: In der CMD-Shell (DOS wurde unter Windows ME "begraben" bzw zumindest "versenkt") wird ASCII, in Windows ANSI verwendet.
Soferne das Log-File original in Unicode vorliegt und es keine Notwendigkeit gibt (die Umlaute sind nicht Grund genug dafür), Ergebnisse in Unicode zu produzieren, wäre es sinnvoll, bereits zu Beginn der Verarbeitung die implizite Konvertierungsfunktion des "type"-Befehles zu verwenden, also ganz einfach:
type Unicode-Log.txt>Log.txt
und mit der so erzeugten Datei "Log.txt" weiter zu arbeiten - dann sollte auch das Umschalten der Codepage auf 1252 genügen ...

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (15)

Frage von liquidbase zum Thema Windows Update ...

DSL, VDSL
Problem mit variernder Internetgeschwindigkeit (12)

Frage von schaurian zum Thema DSL, VDSL ...