2017-01-06 3 views
-3

CMDバッチファイルからpowershellコマンドを呼び出すが、CMDはpowershellモードのままです。コマンドシェルでpowershellモードを終了してバッチファイルを続行するにはどうすればよいですか? 現在のバッチファイルを実行すると、exitと入力してpowershellセッションを終了する必要があります。その後、バッチファイルは途中で中断された場所に進みます。ps1が実行された後にCMDプロンプトに戻ってバッチファイルを再開する方法

+5

ようこそ。助けを求めているコードを含めてください。ここには[mcve] – BenH

+2

が含まれています。ええ、 'PowerShell -Command ...'を実行した場合、コマンド実行時に終了します。代わりにあなたは何をしていますか? – Jaykul

+0

これは、powershellコマンドを含む他のバッチファイルを呼び出すバッチファイルです。修正は以下の通りです。 はSETLOCAL の%SystemRoot%\ System32 \ WindowsPowerShell \ v1.0をの\のPowerShellをオフ@echo:に変更-warningaction SilentlyContinueという : –

答えて

1

シンプル。スタックオーバーフローへ

シェルスクリプト

@echo off 
setlocal 
%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -file <full path to PowerShell file> 
echo PowerShell returned rc %ERRORLEVEL%. 
endlocal 

シンプルPowerShellのファイル

Write-Host -Object 'Hello World'; 
exit (Get-Random -Minimum -10 -Maximum 0); 
+0

ありがとう、これは働いた!私はpowershell.exeの後に-ExecutionPolicy Bypassを追加しなければならなかった。 –

関連する問題