Sie haben wahrscheinlich irgendwo einen lustigen Charakter. Ich bin mir ziemlich sicher, dass Sie xxd -p blah.bat
dann lustige Charaktere in Ihrer Batch-Datei sehen werden.
Sie könnten dann darüber nachdenken, wie sie dorthin gekommen sind und sie entfernt haben .. Und das kann mit xxd und sed gemacht werden. Oder vielleicht anders, wenn Sie wissen, welche Charaktere sie sind.
Sie können xxd herunterladen, indem Sie VIM 7.X oder cygwin herunterladen
Oder Sie könnten einen Hex-Editor finden und die Batch-Datei in den Hex-Editor einfügen.
Sie sagen, Sie erstellen die Batch-Datei aus stdin. Nun, Sie könnten genau beschreiben, was Sie damit meinen, z. B. meinen Sie copy con blah.bat
STRG-Z? Was auch immer Sie damit meinen, es enthält einige lustige Zeichen in der Datei.
hinzugefügt
Ich sehe, du sagst, dass du es mit Echo und Weiterleitung gemacht hast ..
Sie können dies für einige Fehlerbehebungen leicht vereinfachen
Versuchen type blah.bat
Wenn das einen lustigen Charakter zeigt, versuchen Sie echo H>blah.bat
es dann nach dem, was Sie geschrieben haben .. und sehen Sie, an welchem Punkt Sie den lustigen Charakter erhalten.
Eine andere Sache, mit der Sie experimentieren können, ist die Eingabe- und Ausgabecodierung
versuche chcp. chcp 850 und chcp 65001 und sehen, ob Sie Unterschiede feststellen. chcp ändert sowohl die Eingabe- als auch die Ausgabecodierung, aber chcp zeigt nur die Eingabecodierung an.
Wenn Sie sich meine Antwort hier ansehen, lesen Sie bitte https://stackoverflow.com/questions/30904504/font-is-right-why-cant-i-get-this-unicode-character-to-display-in-this-c-sharp / 32418703 # 32418703 Sie sehen ein Programm namens chcpa, das ich vor einiger Zeit geschrieben habe, und Sie können das verwenden, um Eingabe- und Ausgabecodierungen flexibler zu ändern als chcp. Oder Sie könnten einfach chcp verwenden, aber wenn Sie feststellen, dass chcp Sie bei der Fehlerbehebung einschränkt, können Sie chcpa versuchen.
Aber eines Ihrer besten Tools in Ihrer Problembehandlung wäre, wie erwähnt, ein Hex-Editor oder ein xxd. Und versuchen Sie, Ihre Linie noch weiter zu vereinfachen, wie vorgeschlagen.
Mit solchen Schritten können Sie feststellen, wo der Fehler liegt. Und kommentieren Sie, wenn Sie etwas hier oder weiter versuchen.