как я могу запустить эту команду из cmd:
powershell.exe "(get-process |? {$ _. Описание -eq" Sysinter Process Explorer "}) | выберите имя процесса | out-file $ env: APPDATA \ example.txt"
я все еще получаю эту ошибку:
Вы должны предоставить выражение значения в правой части оператора '-eq'. В строке: 1 символ: 37 + (get-process |? {$ _. Описание -eq <<<< Sysinternals Process Explorer}) | выберите имя процесса | out-file $ env: APPDATA \ example.txt + CategoryInfo: ParserError: (:) [], ParentContainsErrorRecordEx ception + FullyQualifiedErrorId: ExpectedValueExpression
windows
command-line
powershell
cmd.exe
process
Кассам Махмуд
источник
источник
Ответы:
в основном у вас есть команда powershell и вставьте его между этими кавычками, чтобы вызвать его из CMD
powershell -command " #PasteCodeHere "
внутри этих кавычек вы должны работать,
'
иначе это прервет ваш параметр команды.Изменить: Дополнительная информация:
довольно часто вы столкнетесь с этим:
powershell -command "& 'somestuff'"
&
используется для вызова файла. когда вы используете только команду,&
это не обязательно, когда вы хотите вызвать скрипт, вы должны использовать его.powershell -command "& 'C:\foobar.ps1'"
Вы также можете использовать
powershell -file C:\file.ps1
для вызова сценарияисточник
powershell -command " dir 'C:\Program Files' "
powershell -command "dir \"c:\Program Files\" "
Я поместил следующие команды в командный файл для сброса Edge (который время от времени вызывал некоторые проблемы). Пакетный файл был запущен на уровне администратора. Обратите внимание на тройные кавычки в строке powershell. Этот пример может прояснить ситуацию для тех, кто пытается запустить команду powershell из командной строки «cmd».
Обратите внимание на «тройные» кавычки в строке Powershell. Между прочим, эта строка представляет собой одну строку с надписью «For Each» и «-Register» в этом поле для комментариев. Это должна быть одна строка в командном файле (или в командной строке, если она введена вручную в
cmd
сеанс).Важно то, что после слова «PowerShell» кавычки (») запускают и заканчивают команду, а любые внутренние кавычки, уже находящиеся в передаваемой команде powershell, преобразуются в« тройные »кавычки (
"""
)источник