Mit echo ohne Leerzeichen in DOS
Habe ich bemerkt, dass wenn ich mit echo, etwas zu drucken, um eine Datei in DOS, wird ein Leerzeichen an den string angehängt. Ich muss drucken Sie die Zeichenfolge ohne Leerzeichen. Gibt es eine Möglichkeit, das zu tun, oder so zu umgehen, entfernen Sie Leerzeichen aus der Datei?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ob ich das problem verstanden hatte, richtig, Sie schrieb das Leerzeichen.
Statt
verwenden
echo 1 2 3>file
. Wenn die Zeichenfolge passiert am Ende mit einer Zahl, die Umleitung zu behandeln, wird es als Rohr Kanal. Könnten Sie setzen es in Anführungszeichen, aber Sie können nicht wollen, es in Anführungszeichen.Vorausgesetzt, du redest
cmd.exe
eher als die tatsächlichen (eher veraltet) MS-DOS, gibt es eine Reihe von Möglichkeiten, dies zu tun, die erste ist:aber ich finde, dass etwas weniger als lesbar, da bin ich verwendet, um in der Lage, klar zu umreißen, 'Argumente' auf der Kommandozeile.
Alternativ, es gibt nichts hindert Sie vertauschen, um die Reihenfolge der Befehlszeile:
denen Sie immer noch trennen die Argumente zwar nicht mit überflüssigen Leerzeichen in Ihre Ausgabe-Datei.
In der Tat, ich habe oft diese Methode verwendet für code-Blöcke als gut:
dem schreiben beide Zeilen in die Datei. Ich finde es vorzuziehen, in diesem Fall, da Sie wissen, gleich zu Beginn, wo der Ausgang wird, anstatt zu gehen und suchen Sie am Ende den code-block.
echo Here is some text>output.txt but I find that somewhat less than readable since I'm used to being able to clearly delineate 'arguments' on the command line.
Noch wichtiger ist, wenn der text mit einer Zahl endet, wird er behandelt, als Rohr Kanal. Der zweite scheint gut zu funktionieren (ich erinnere mich nicht, sehen, dass die form vor). Danke.Einige schnelle Suche brachte mich dieser link
Es scheint, haben Sie mehrere Optionen. Wenn Sie möchten, analysieren Sie die Datei post-echo mit einem Skript, könnten Sie diese VBScript
die loops zeilenweise durch eine Datei(normalerweise .txt), und führt RTrim, die strips trailing spaces.
Cheers
for /f "tokens=* delims= " %%x in (file.txt) echo %x>file2.txt
. Aber warum dann nicht tun Sie es in Ihre original-Datei?