以管理員身分透過帶有參數傳遞的批次檔執行 powershell 腳本

以管理員身分透過帶有參數傳遞的批次檔執行 powershell 腳本

當我在沒有管理員的情況下透過批次檔執行腳本時,它會傳遞參數,但是當我以管理員身分執行腳本時,它不會傳遞參數。

我嘗試了連結中的命令,但沒有成功:
以管理員身份開啟程式(有條件)

以管理員身分透過批次檔執行腳本的命令:

PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File "D:\z_Batchs e Scripts\Batchs\Normaliza_LUFS\ArqsNorms_LUFS_pass.ps1' '%_vLUF%'  -Verb RunAs}" 

%_vLUF%要傳遞的參數。

錯誤訊息:

No line:1 character:4
+ & {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolic ...
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Start-Process], ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.StartProcessCommand

powershell腳本中的指令接收參數:

Param(
     [decimal]$env:_vLUF
)

批次檔或 powershell 腳本中的指令可能有什麼問題?

答案1

根據以下連結中的答案:
透過批次檔作為管理員執行 powershell 腳本

它是這樣運作的:

powershell -NoProfile -ExecutionPolicy Bypass -Command "Start-Process -Verb RunAs powershell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File \"D:\z_Batchs e Scripts\Batchs\Normaliza_LUFS\ArqsNorms_LUFS_pass.ps1\" -_vLUF %_vLUF%'"

相關內容