Перенаправить вывод командной строки в текстовый файл windows 2008 r2 - PullRequest
0 голосов
/ 09 июля 2010

Я пытаюсь перенаправить вывод двух команд chkdsk и defrag из командной строки в один текстовый файл, например c:> defrag c: >log.txt.

Его поведение нормальное на Windows XP.Вывод поступает последовательно в файл.Однако в Windows Server 2008 R2 chkdsk работает нормально, но при выполнении defrag файл в течение некоторого начального времени остается пустым и неожиданно заполняется кучей текста.Я хочу, чтобы он был последовательным, так же, как Windows XP.

Если мы запускаем defrag s exe на Windows Server 2008 R2 без перенаправления, мы получаем последовательный вывод на экран.

Пример: -

Случай 1: прямой запуск команды из командной строки

C:>defrag c:
Windows Disk Defragmenter
Copyright (c) 2007 Microsoft Corp. and Executive Software International, Inc.

Случай 2: выполнение команды из командной строки и перенаправление вывода в файл

C:>defrag c: >log.txt

(Inэтот файл дела остается пустым до тех пор, пока команда не будет выполнена)

Что я могу сделать, чтобы он последовательно входил в файл?

1 Ответ

1 голос
/ 09 июля 2010

Действует ли он так же, если вы используете программу перенаправления вывода, такую ​​как tee ? В утилитах GNU для Win32 имеется версия для Windows. Если вы запустите программу с командой, подобной defrag c: | tee log.txt, будет ли выходной поток вести себя так, как вы хотите (по частям вместо буферизованного)?

...