如何从 Windows Powershell 执行脚本?

How do I execute a script from Windows Powershell?

我创建了一个小 aws.bat 脚本,然后在 PowerShell 中导航到脚本目录。

但是当我键入 aws 时,我收到一条错误消息并且它不执行脚本。有什么我应该做的特别的事情吗?

这是我尝试过的方法:

PS C:\G> .\aws.bat

C:\G>$BucketName = "ab-user"
'$BucketName' is not recognized as an internal or external command,
operable program or batch file.

第一个和其他每个命令都有类似的消息。

您不能只输入名称本身,无论有无文件扩展名,您首先必须告诉 powershell 如何处理它。

可以这样调用:

& .\aws.bat

如果您需要在 powershell 中返回的 LastExitCode 来检查 bat 文件是否有效(0 通常表示有效,其他任何值通常表示无效),请按如下方式使用 Start-Process

$batch = Start-Process -FilePath .\aws.bat -Wait -passthru;$batch.ExitCode

如果您希望批处理文件在 运行 时被 powershell 隐藏,请执行以下操作:

$batch = Start-Process -FilePath .\aws.bat -Wait -passthru -WindowStyle Hidden;$batch.ExitCode