Переключатель Wmic/format недействителен XSL?

У меня есть быстрый вопрос, он должен быть относительно простым для тех, у кого больше опыта работы с командным процессором WMI, чем у меня (и, поскольку я абсолютный новичок, это не сложно :-))

Я не понимаю, почему переключатель wmic/format работает именно так. Я открываю cmd.exe и набираю

wmic process list brief /format:htable > processlist.html

это делает именно то, что я хочу, и больше не беспокоит. В то время как если я перейду к процессору wmic и попытаюсь выполнить ту же команду, что и выше...

wmic:root\cli>process list brief /format:htable > processlist.html

Я получаю тег ошибки: «Недопустимый формат XSL (или) имя файла».

http://img209.imageshack.us/img209/5383/37tn.png

Вот скриншот. Примечание. Я уже скопировал файлы XSL из каталога wbem в каталог sys32.

Может кто-нибудь объяснить мне, почему эти 2 команды, которые для меня выглядят абсолютно одинаково, с той лишь разницей, что одна выполняется вне среды wmic, а другая внутри, последняя не работает? Я просто не понимаю этого.

Пожалуйста, посоветуйте, чтобы я мог понять это немного лучше! :-)


person AlexPawlak    schedule 07.08.2013    source источник


Ответы (3)


Вы пытаетесь использовать перенаправление CMD.EXE >, находясь в интерактивном контексте WMIC. Это не может работать.

Вы можете использовать переключатель WMIC /output:filename в интерактивном режиме. Каждая последующая команда перезаписывает вывод предыдущей команды. Вы можете получить несколько команд для перехода к одному и тому же файлу, используя вместо этого /append:filename. Вы можете сбросить вывод обратно на стандартный вывод, используя /output:stdout.

/output:processlist.html
process list brief /format:htable
/output:stdout
person dbenham    schedule 26.11.2013
comment
Это определенно правильный ответ. Спасибо, дбенхам :-) - person AlexPawlak; 22.03.2014

Попробуй это

copy /y %WINDIR%\system32\wbem\en-US\*.xsl %WINDIR%\system32\

А потом

wmic:root\cli>process list brief /format:htable.xsl > processlist.html

Обратите внимание на наличие расширения после "htable"

person Psddp    schedule 07.03.2014

Вы пытались указать полный путь в вызове процесса wmic:root\cli>? Могу поспорить, что первый сработал, потому что он выводил файл в текущий каталог.

person Jim    schedule 19.08.2013
comment
Только что проверил (на другой машине W7) - проблема та же. Спасибо за ответ! - person AlexPawlak; 20.08.2013
comment
см. эту ссылку... technet.microsoft.com /en-us/library/cc757287(v=ws.10).aspx Они предлагают следующий синтаксис: /FORMAT:htable.xsl:datatype=‹datatype›:sortby=‹property›. Например, PROCESS GET /FORMAT:htable.xsl:datatype=number:sortby=ProcessId. - person Jim; 20.08.2013
comment
Спасибо. Я попробую это в ближайшее время. Если работает то нормально. Меня все еще удивляет, что для выполнения изнутри требуется гораздо больше гимнастики, поскольку формат по умолчанию меня вполне устраивает :-) - person AlexPawlak; 20.08.2013