Как запустить такие команды, как
typeperf "\Process(*)\% Processor Time" -sc 1
из командного файла?
При запуске из командной строки эта команда выводит что-то чудовищное, а при запуске из файла bat она печатает
Error: No valid counters.
Как запустить такие команды, как
typeperf "\Process(*)\% Processor Time" -sc 1
из командного файла?
При запуске из командной строки эта команда выводит что-то чудовищное, а при запуске из файла bat она печатает
Error: No valid counters.
Вам нужно удвоить знак процента. С http://support.microsoft.com/kb/75634
Использование знака процента (%) в пакетном файле требует указания двух знаков процента (%%).
(...)
MS-DOS использует% 1,% 2, ...% 9 в качестве заменяемых параметров командной строки. Например, перед выполнением команды ECHO% 1% 1 будет заменен первым параметром, переданным в пакетный файл. % 0 заменяется командой, используемой для выполнения командного файла.Один знак процента в строке рассматривается как символ "nul" в пакетном файле.
вместо использования двойных знаков% вы также можете использовать конфигурационный файл для своих настроек счетчика, например:
tp.cfg:
\Processor(_Total)\% Processor Time
\Memory\Page Faults/sec
Затем в вашем командном файле вызовите:
typeperf -cf "tp.cfg"