Запуск PowerShell cmd с конвейером в командной строке cmd
Я хочу запустить cmd select-string
в командной строке cmd, чтобы найти рекурсивную строку.
Но он не может работать, пока cmd имеет символ конвейера (|), и он будет работать, запустив cmd в командной строке powershell.
Информация об ошибке на китайском:
'select-string' is not recognized as an internal or external command,
operable program or batch file.
Может кто-нибудь знает как это исправить? Сделайте смысл конвейера в командной строке cmd или используйте select-string
найти строку рекурсивную.
Я хочу, чтобы это работало в моем случае, большое спасибо.
1 ответ
Как предлагается в комментарии, вам нужно использовать pipe в PowerShell, а не в cmd. Вы можете сделать это так:
powershell "Get-ChildItem | Select-String -Pattern 'something something'"
Примечание. Конечно, это всего лишь обходной путь, я бы по-прежнему предлагал просто запускать командлеты PowerShell в PowerShell, а не в cmd. Это может избавить вас от головной боли от устранения неполадок неработающего кода.