{title}

Hallo AllIch habe derzeit eine Textdatei im Format: "Name", "Kundendokument", "{Sequenznummer}", "773", "{Stapelklassenname}", "Name", "{Dokumentformularname} "," Bankleitzahl "," Kundennummer "," 11111 "," Kundenname "," ABC "," {ID der Scan-Bedienerstation} "," Highbury01 "," {Datum der Chargenerstellung} "," 2/13/2009 "," {Batch Creation Time} "," 10:48:54 AM "," Images 00000190.TIF ", wobei jeder Wert durch ein Komma (,) begrenzt ist. Wie würde ich eine Batch-Datei schreiben, die täglich auf diese.txt-Datei zugreift, und alle Komma (,) -Werte in Pipe konvertieren? So sieht es wie folgt aus: "Name" | "Kundendokument" | "{Sequenznummer}" | "773" | "{Stapelklassenname}" | "Name" | "{Name des Dokumentformulars}" | "Bankleitzahl "|" Kundennummer "|" 11111 "|" Kundenname "|" ABC "|" {ID der Scan-Bedienerstation} "|" Highbury01 "|" {Datum der Chargenerstellung} "|" 13.02.2009 "|" {Batch-Erstellungszeit} "|" 10:48:54 AM "|" Images 00000190.TIF "Ich weiß, dass ich im Notizblock suchen und ersetzen kann, aber ich möchte lieber eine Batch-Datei erstellen und zu einem Zeitplan hinzufügen dass es keine menschliche Intervention gibt.

Einige Möglichkeiten1) vbscriptCode: Set objFS = CreateObject ("Scripting.FileSystemObject") Set d = CreateObject ("Scripting.Dictionary") strFileSet objFile = objFS.OpenTextFile (strFile, 1) Do Until objFile.AtEndOfStreamstrLine (strLine, ",", "|") Loop2) spezifische Textverarbeitungswerkzeuge wie sed und (gaffen werde den Job machen. Diese Tools finden Sie auch in Microsoft Services für Unix (sofern vorhanden). Code: C: test> sed "s /,/|/g" file.txt "Name" | "Kundendokument" | "{Sequenznummer}" | "773" | "{Stapelklassenname}" | "Name "|" {Document Form Name} "|" Bankcode "|" Kundennummer "|" 11111 "|" Kundenname "|" ABC "|" {ID der Scan-Bedienerstation} "|" Highbury01 "|" {Stapelerstellung Datum} "|" 13.02.2009 "|" {Batch-Erstellungszeit} "|" 10:48:54 "|" Images 00000190.TIF "3) Programmiersprachen, zB Python oder Perl sowie others.eg PythonCode: für offene Zeile ("file.txt"): print line.strip (). replace (",", "|")

Kann es jemals ein Komma innerhalb eines Wertes geben?

Danke Ghost. Ich muss die Textdatei nach Kommas durchsuchen (höchstwahrscheinlich mit dem Befehl find) und durch eine Pipe ersetzen. Aus meiner Forschung ist der einzige Befehl MUNGE.exe, den ich herunterladen muss, aber ich bin nicht zu scharf auf. So ziemlich jede Nacht wird der Zeitplan die Batch-Datei ausführen, die dann die spezifische Textdatei nach Kommas durchsucht und durch eine Pipe ersetzt. VB ist nicht meine Stärke, deshalb möchte ich es so weit wie möglich vermeiden. Gibt es einen anderen Weg

Hallo BC_Programmer, nein, die Werte, die in die Textdatei geschrieben werden, werden aus DB2 entfernt, und wir haben sichergestellt, dass diese Werte keine Kommas enthalten

Er gab Ihnen drei verschiedene Möglichkeiten.

ghostdog74, sed "s /,/|/g" file.txt funktionierte wie ein Zauber. Der sed-Download für Windows war schnell und einfach. Ihr bietet Lösungen, die so schnell sind, dass das Originalposter nicht sieht, was Ihr getan habt Die Unix-Befehle sind viel besser als DOS-Batch- oder DOS-Befehle. Was ist die beste Download-Site für die anderen Unix-Befehle, die mit Windows funktionieren? Bill

Nun, es gibt Unxutils, die hier zu finden sind: //unxutils.sourceforge.net/ und ich fand das: //lifehacker.com/362316/use-unix-commands-in-windows-built+in-command-prompt Ich bin sicher, Ghostdog kann mehr Licht ins Dunkel bringen. Ich habe Linux nicht wirklich benutzt (außer ein paar Wiederherstellungen)

1) Microsoft-Dienste für Unix 2) Cygwin und 3) GNU für Windows

Ich benutze die Core Utils //gnuwin32.sourceforge.net/packages/coreutils.htm

Nicht zu vergessen auch diese Tools1) FindUtils für Windows, der find-Befehl ist viel besser als die Windows-Version2) DiffUtils zum Vergleichen von Dateien und dergleichen.3) Gawk, Sed wie erwähnt.4) Grep.Für eine vollständige Liste der verfügbaren Unix-Befehle für Windows , Schau dir das an Verzeichnis

Wie kann ich Protokolle erhalten, die als Handbuch dienen können?

Möglicherweise habe ich einige ernsthafte Bedrohungen. Sie möchten diesen Thread überprüfen.

Alle Ihre Vorschläge sind einen Versuch wert. Wenn dies ein Apple] [+ FAT wäre, würde ich einen Sektoreditor besorgen und die Festplatte bearbeiten. Ich bin nicht sicher, ob es in einer NTFS-Dateitabelle machbar ist. Ich dachte, wenn der Dateiname d wäre, würde die Pipe möglicherweise nicht als Pipe fungieren - wie wenn Sie echo "abc | def" eingeben, und ich frage mich, ob das OP den Namen d hat. Ich bin auch gespannt, wie der Dateiname erstellt wurde.

Ich habe mich auch gefragt, aber ich würde eine Datei mit einer Pipe im Namen brauchen, um sie zu testen. Sie können den s-Trick sicherlich nicht verwenden, um einen zu erstellen. "IPSUS - Bereitstellung von Business Compliance und IT-Know-how". Hmmm. Ich denke, dass Dateien mit unzulässigen Namen manchmal verwendet werden, um einen Ordner zu sperren, hmmm

Dies lässt darauf schließen, dass es sich um Malware handelt. Der einzige Grund, ein verbotenes Symbol in einen Dateinamen aufzunehmen, besteht darin, dass niemand den Namen entfernen kann.

Er scheint weggegangen zu sein.

Vielleicht hat einer Ihrer Vorschläge funktioniert. Für das, was es wert ist, ist so etwas schon in anderen Foren aufgetaucht. www.novell.com/coolsolutions/tip/17100.html

Vielen Dank für die nachdenklichen Antworten! Ich hatte einen langen und anstrengenden Tag, daher ist es zur Zeit spät in der Nacht. Ich überprüfe gerade den Thread. Ich werde morgen Nachmittag (Sonntag, den 10.) all die tollen Vorschläge ausprobieren!

Vielen Dank für Ihre Geduld. Als ich versuchte, es in Win7 zu löschen, lautete die Fehlermeldung: "Der von Ihnen angegebene Dateiname ist ungültig oder zu lang." Wahrscheinlich nicht gültig IMO, da es eine "Pipe" in it.SalmonTrout hat: 1. Das Hinzufügen des "" am Ende hat nicht geholfen (IPSUS 2014) 2. Wie Sie dachte ich auch, dass das Pipe-Symbol ein Problem ist. Was zu # 3; 3 führt. Tatsächlich,WieWurde ein Pipe-Symbol von Windows als gültiges Dateinamenzeichen eingegeben/akzeptiert? Außerdem ist die Erweiterung ".desktop" fischartig (DesktopX von Stardock - was auch immer das ist). Meine (sehr einfachen) DOS-Chops sind von '83 -'85 mit einem IBM AT. Ihre fortgeschrittenen DOS-dir/X & rm.exe-Methoden würden kurzfristig meinen Rahmen sprengen, aber ich habe mir Notizen gemacht und werde versuchen, sie kennenzulernen. Eine schrittweise Anleitung kann angebracht sein, wenn es sich um eine technische Anleitung handelt. Vielen Dank im Voraus.

Laufen Sie nicht mit Gabeln

www.bloggingwv.com/dont-run-with-scissors-or-forks/

Autsch1

Wie heißt er? Gabelnase

Ich habe keine Ahnung, wie er heißt

Gabelnase - Fk NaseDas ist ein Scherz, wird aber wahrscheinlich nur in England (oder in meinen Gedanken) verstanden.

Ich glaube nicht, dass ich es verstehe.

Wenn ich Sie nach seinem Namen frage und Sie nicht wissen, dass Sie "Fk weiß" sagen könnten, habe ich ihn von "Fk weiß" in "Gabelnase" geändert. Ich bin froh, dass ich kein Komiker bin. Menschen Witze zu erklären, würde peinlich werden.

OWW !!! Warten Sie, warum scheinen die Foren so anders zu sein

Guter Gott, das ist widerlich. Wie hat er das gemacht? Ich meine, wer hätte die Entschlossenheit, eine Gabel bis zum Anschlag in die Nase zu stecken? ew ew ew ew ew ew ew ew ew

Nun, ich denke, er könnte sagen: "Steck eine Gabel in mich, ich bin fertig."

Beliebte Beiträge