Mit CMD Datei den Editor (notepad.exe) öffnen und gewünschten Text reinschreiben?

Das Ergebnis basiert auf 2 Abstimmungen

Geht nicht 50%
Mega einfach 50%
ziemlich kompliziert 0%
Kein Bock zu erklären... 0%
ich hab erklärt wie s geht 0%

2 Antworten

Dazu brauchst du - so weit ich weiß - gar kein Programm wie beispielsweise "notepad.exe". cmd schafft das auch quasi "von sich aus".

Wenn du zum Beispiel mit dem Befehl "tree" den Verzeichnisbaum auflisten willst, dann wird dir die Ausgabe des Befehls "tree" üblicherweise in der Eingabeaufforderung (cmd) angezeigt. Wenn du jedoch beispielweise in der Eingabeaufforderung den Befehl:
"tree D: > C:\MyTree.txt" (ohne Gänsefüßchen)
eingibst und mit ENTER bestätigst, so wird die Ausgabe des Befehls in die Datei "MyTree.txt" geschrieben. Dies natürlich nur dann, wenn du auch die Rechte hast in das entsprechende Verzeichnis zu schreiben. Unter Windows 7 klappt das unter "C:\" (im Stammverzeichnis) beispielsweise nur dann, wenn du die Eingabeaufforderung mit Administratorrechten gestartet hast.

Beachte bitte, dass CMD (die Eingabeaufforderung) beim Schreiben in Dateien den Text stets ASCII-Codiert ausgibt. Der Rest von Windows arbeitet jedoch mit einer ANSI-Codierung.

Um die so generierte Datei mit ASCII-Codierung in eine Datei mit ANSI-Codierung umzuwandeln öffnest du bitte erst Notepad (und nicht über den Doppelklick auf die entsprechende txt-Datei), dann öffnest du den Datei-Öffnen-Dialog in/unter Notepad, und dort wählst du unter "Codierung" "MS-DOS-Format", dann wählst du die entsprechende txt-Datei, und dann klickst du auf "Öffnen". Und dann werden Umlaute auch richtig angezeigt. Nun wählst du - vice versa - über den Datei-Speichern-Unter-Dialog wiederum "Windows" bei "Codierung" und speicherst im Verzeichnis deiner Wahl unter dem Dateinamen deiner Wahl. Nun liegt die soeben gespeicherte Datei ANSI-Codiert vor.

Für deine Ursprüngliche Fragestellung probiere doch einfach mal den Befehl:

"echo hallo > test.txt"

Aber ich bin mir sicher, dass das, was du vorhast irgendwie geht. Ob nun mit Programm (wie beispielsweise Notepad.exe) oder sogar nur mit cmd Bordmitteln.

Geht nicht

Ist so.

Es sei denn, du schreibst den Text in eine Datei und öffnest notepad mit dieser Datei.

echo hallo > test.txt | notepad test.txt

MorSch2101 
Fragesteller
 16.03.2017, 21:44

Vielen dank, es hat sofort funktioniert. Kannst du mir als noob die bedeutung der einzelnen Worte und Zeichen erklären? Also Echo ist klar aber der rest? also was heißt der gerade Strich und warum "test"?

0
priesterlein  16.03.2017, 21:47
@MorSch2101

test.txt ist ein Dateiname, den ich zufällig wählte. Wie du deine Datei nennst, ist deine Sache.

Beachte, dass der Dateiname im notepad-Titel angezeigt wird. Wenn du dort nicht test.txt stehen haben willst sondern beispielsweise "Hallo":

echo hallo > Hallo | notepad Hallo

Der senkrechte Strich übernimmt normalerweise den standard output und leitet ihn auf den standard input des folgende Befehls. In dem Fall hat er keine Bedeutung, ich wollte nur nicht zwei Befehlszeilen schreiben.

1