无法在 Exchange 管理 Shell 中从批处理中执行 PowerShell 脚本

Unable to execute PowerShell script from batch in Exchange management Shell

我有一个脚本可以为我想从批处理文件中 运行 的用户启用 OWA。从 Exchange 管理控制台 运行 没问题。从批处理文件打开 Echange 管理控制台也可以,但是执行启用用户的脚本不会 运行.

这是我的批处理文件:

PowerShell.exe -noexit -command ". 'C:\Program Files\Microsoft\Exchange Server\V15\bin\RemoteExchange.ps1'; Connect-ExchangeServer -auto; 'C:\Script\Exchange\OWA_access\enable_OWA_access_RM-versie.ps1'"

这是结果:

     Welcome to the Exchange Management Shell!

 Full list of cmdlets: Get-Command
 Only Exchange cmdlets: Get-ExCommand
 Cmdlets that match a specific string: Help *<string>*
 Get general help: Help
 Get help for a cmdlet: Help <cmdlet name> or <cmdlet name> -?
 Exchange team blog: Get-ExBlog
 Show full output for a command: <command> | Format-List

 Show quick reference guide: QuickRef
 Tip of the day #50:

 Bla bla bla

 VERBOSE: Connecting to PROMAILVLZ-04.sfg.net.
 VERBOSE: Connected to PROMAILVLZ-04.sfg.net.
 C:\Script\Exchange\OWA_access\enable_OWA_access_RM-versie.ps1
 [PS] C:\Script\Exchange\OWA_access>

"C:\Script\Exchange\OWA_access\enable_OWA_access_RM-versie.ps1" 不会执行,因为系统会提示您输入用户名,而事实并非如此。如果我 运行 这个(当前)“管理 shell”(C:\Script\Exchange\OWA_access\enable_OWA_access_RM-versie.ps1)中的文件,它将 运行 没有问题。

有人吗?

提前致谢!

理查德

您发出了“return 字符串”命令,如果您想执行 ps1,您应该 &. 来代替,就像您所做的那样RemoteExchange.ps1.