1

Есть ли способ написания пакетного сценария, который выполняется через C:\>cmd.exe a.bat чтобы переключиться на powershell.exe и запустить оставшиеся строки кода?

1. | echo "Hi. I'm cmd.exe."
2. | powershell
3. | echo "Now, I'm PowerShell.exe! Look:"
4. | get-random

Это просто останавливается после того, как строка # 2 ожидает ввода.

1 ответ1

0

Вы можете написать .bat файл и использовать это для первой строки:

;@Findstr -bv ;@F "%~f0" | powershell -noprofile -command - & goto:eof

Эта строка передает все строки из текущего файла ("% ~ f0"), которые не начинаются с "; @F", в PowerShell для выполнения. Остальные строки будут кодом PowerShell. Вот пример.

;@Findstr -bv ;@F "%~f0" | powershell -noprofile -command - & goto:eof

$procCount = (Get-Process).Count
Write-Host "There are $procCount processes running right now." -fore green
Start-Sleep 5

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .