1

PowerShell スクリプト (test.ps1) があり、これをバッチ ファイルから実行したいと考えています。バッチ ファイルには次のものが含まれます。

PowerShell –Command “& ‘.\test.ps1’” 001
pause

32 ビットの Windows 7 マシンで (管理者として) バッチ ファイルを実行すると、powershell スクリプトが正常に実行されます。64 ビットの Windows 7 マシンで実行しようとすると、次のエラーが発生します。

C:\Windows\system32>PowerShell –Command “& ‘.\test.ps1’” 001
The term ‘.\test.ps1’ is not recognised as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if the path was included, verify that the path is correct and try again.
At line:1 char:2
+ & <<<<  ‘.\test.ps1’ 001
    + CategoryInfo              : ObjectNotFound: (.\test.ps1:String) [], CommandNotFoundException
    + FullyQualifiedErrorID : CommandNotFoundException

何か案は?

ありがとう

4

1 に答える 1

3

からスクリプトを実行していますがC:\Windows\system32、そのようなスクリプトはありません (通常、これはバットが管理者権限で開始されたときに発生します)。ディレクトリを変更するか、フルパスで呼び出してください。

これを修正する最も簡単な方法 -cd /d %~dp0バッチ スクリプトの開始時に設定して、スクリプトがある場所のディレクトリを変更します。

于 2013-09-05T07:32:36.147 に答える