Suche…


Syntax

  • [Befehl] [[> | >> | <| 2> | 2 >>] Datei]
  • [[> | >> | <| 2> | 2 >>] Datei] [Befehl]

Parameter

Parameter Einzelheiten
Befehl Jeder gültige Befehl
> Schreiben Sie STDOUT in die Datei.
>> STDOUT an die Datei an.
< Datei in STDIN .
2> Schreiben Sie STDERR in die Datei.
2>> Hängen Sie STDERR an die Datei an.
Datei Der Pfad zu einer Datei.

Bemerkungen

  • Sie können beliebig viele Umleitungen hinzufügen, solange das Umleitungssymbol und die Datei zusammen bleiben und in der richtigen Reihenfolge bleiben.

Ein Beispiel...

@echo off
setlocal
set /p "_myvar=what is your name?"
echo HELLO!>file.txt
echo %_myvar%!>>file.txt
echo done!
pause
type file.txt
endlocal
exit

Jetzt sieht file.txt so aus:

HELLO!
John Smith!

(Vorausgesetzt, Sie haben John Smith als Ihren Namen eingegeben.)

Jetzt sieht die Konsole Ihrer Batchdatei folgendermaßen aus:

what is your name?John Smith
done!
Press any key to continue...
HELLO!
John Smith!

(und es sollte so schnell beendet werden, dass Sie nach der Aufforderung möglicherweise nichts sehen können. Press any key to coninue... )

Sonderzeichen umleiten mit aktivierter verzögerter Erweiterung

Dieses Beispiel entspricht dem Sonderzeichen ! in eine Datei. Dies funktioniert nur, wenn DelayedExpansion deaktiviert ist. Wenn die verzögerte Erweiterung aktiviert ist, müssen Sie drei Einfügemarken und ein Ausrufezeichen wie folgt verwenden:

@echo off
setlocal enabledelayedexpansion


echo ^^^!>file
echo ^>>>file

goto :eof    

    ^> is the text
    >> is the redirect operator

pause
endlocal
exit /b

Dieser Code gibt den folgenden Text in die Datei zurück

!
>

wie

^^^ escapes the ! and echos it into the file
^> escapes the > and echos it into the file

In eine Datei schreiben

@echo off
cls
echo Please input the file path, surrounded by "double quotation marks" if necessary.
REM If you don't want to redirect, escape the > by preceding it with ^
set /p filepath=^> 

echo Writing a random number
echo %RANDOM% > %filepath%
echo Reading the random number
type %filepath%

REM Successive file writes will overwrite the previous file contents
echo Writing the current directory tree:
> %filepath% tree /A
echo Reading the file
type %filepath%

REM nul is a special file. It is always empty, no matter what you write to it.
echo Writing to nul
type %windir%\win.ini > nul
echo Reading from nul
type nul

echo Writing nul's contents to the file
type nul > %filepath%
echo Reading the file
type %filepath%


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow