2015-11-25 84 views
0

我已經查看了使用批處理文件將參數傳遞到PowerShell腳本中的幾個不同解決方案;然而,他們中沒有人爲我工作。我的批處理比我看到的其他問題稍微複雜一點,經過多次搜索後,我決定發佈我自己的。將ThisScriptsDirectory作爲參數傳遞到Powershell從批處理

這是我目前的批處理文件(該運行,但在參數不及格):

@ECHO OFF 
SET ThisScriptsDirectory=%~dp0 
SET PowerShellScriptPath=%ThisScriptsDirectory%TrentsAdobeTool1.ps1 
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%PowerShellScriptPath%""' -Verb RunAs"}; 
pause 

我想在ThisScriptsDirectory以作爲參數傳遞所提到的腳本,存儲,和能夠使用它作爲路徑(以後添加到路徑中的其他文件夾)

所以,我想知道如何更改批處理文件以及如何接受參數到Powershell腳本中。

回答

0

如果您只需訪問環境變量的值,則可以通過PSDrive for環境變量在Powershell腳本中執行此操作。

基於批處理文件的示例。

$ENV:ThisScriptsDirectory 
$ENV:PowerShellScriptPath 
+0

這很完美。謝謝! –

+0

所以這個工作對我來說是最初的工作,但是我回過頭來讓腳本更加健壯,現在我每次嘗試使用$ ENV:ThisScriptsDirectory它都會返回空。爲什麼會這樣? –

相關問題