Как отобразить выходной текст в командной строке DOS при перенаправлении выходного текста в файл? - PullRequest
3 голосов
/ 08 сентября 2011

В настоящее время у меня есть файл make, который будет собирать мое программное обеспечение с использованием gnumake, и в настоящее время я перенаправляю свой выводимый текст (например, журналы сборки, предупреждения, ошибки) в файл.Но теперь я думаю, что очень полезно также отображать весь выходной текст при сборке и перенаправлении выходного текста в файл.Ниже приведена моя текущая команда dos,

gnumake -f Build.mak  1>Logs.txt 2>>&1

Можно ли отображать выводимый текст при перенаправлении выводимого текста в файл?

Пожалуйста, сообщите.

Большое спасибо.

Ответы [ 3 ]

3 голосов
/ 13 января 2014

Я знаю, что это старый пост, но он никогда не отвечал правильно.Вот один ответ для других будущих зрителей.Вам не нужно tee, чтобы иметь возможность войти в файл и показать текст.Есть и другой способ.

На этот вопрос ответил StackOverflow.Вот 2 ссылки:

Если вы не хотите использовать tee, отметьте это: При добавлении TextLog в Echo в командной строке ввод не будет отображаться

Для tee вы можете увидеть это: Отображение вывода командной строки Windows и перенаправление его в файл

Просто собираюсь выбросить ответ здесь.

В любом случае вы можете использовать это без использования tee.

set LogFile=path\logfile.txt
set TempLog=path\temp
set logg=^> %TempLog%^&^& type %TempLog%^&^&type %TempLog%^>^>%LogFile%

Если вам нужно создать каталог или / и logfile.txt, сделайте это.

if not exist "path" mkdir "path" >>nul
echo. 2>  %LogFile%  >nul
echo. 2>  %TempLog%  >nul

Теперь просто используйте echo вот так:

echo This will show me a text and logg  %logg%
2 голосов
/ 08 сентября 2011

если вы устанавливаете Cygwin (инструменты Unix в MS Windows), вы можете использовать команду "tee": gnumake -f Build.mak |tee Logs.txt

(это сохранит вывод в Logs.txt и одновременно отобразит вывод на консоль).

0 голосов
/ 08 сентября 2011

Посмотрите на это SOq:

Как правило, вы можете использовать команду tee, например. отсюда:

...