batch-file
Przekierowanie wejścia i wyjścia
Szukaj…
Składnia
- [polecenie] [[> | >> | <| 2> | 2 >>] plik]
- [[> | >> | <| 2> | 2 >>] plik] [polecenie]
Parametry
Parametr | Detale |
---|---|
Komenda | Każde prawidłowe polecenie. |
> | Napisz STDOUT do pliku. |
>> | Dołącz STDOUT do pliku. |
< | Przeczytaj plik do STDIN . |
2> | Napisz STDERR do pliku. |
2>> | Dołącz STDERR do pliku. |
plik | Ścieżka do pliku. |
Uwagi
- Możesz dodać dowolną liczbę przekierowań, o ile symbol przekierowania i plik pozostają razem i we właściwej kolejności.
Przykład...
@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
Teraz plik file.txt wygląda następująco:
HELLO!
John Smith!
(zakładając, że wpisałeś John Smith
jako swoje imię).
Teraz konsola pliku wsadowego wygląda następująco:
what is your name?John Smith
done!
Press any key to continue...
HELLO!
John Smith!
(i powinien wyjść tak szybko, że po wyświetleniu monitu możesz nie być w stanie nic zobaczyć Press any key to coninue...
)
Przekieruj znak specjalny z włączonym opóźnionym rozszerzaniem
Ten przykład odzwierciedla charakter specjalny !
do pliku. Działa to tylko wtedy, gdy opóźnienie jest wyłączone. Gdy opóźnione rozszerzenie jest włączone, musisz użyć trzech karetek i wykrzyknika w następujący sposób:
@echo off
setlocal enabledelayedexpansion
echo ^^^!>file
echo ^>>>file
goto :eof
^> is the text
>> is the redirect operator
pause
endlocal
exit /b
Ten kod wyświetli następujący tekst w pliku
!
>
tak jak
^^^ escapes the ! and echos it into the file
^> escapes the > and echos it into the file
Napisz do pliku
@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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow