簡體   English   中英

如何將CMD(%2)中的第二個參數傳遞到PowerShell變量中

[英]How do I pass second parameter from CMD (%2) into a PowerShell variable

我有一個名為test.bat的文件。

它包含對PowerShell腳本(Process.ps1)的調用,如下所示:

Powershell.exe -File %1

其中%1是我將在命令行中傳遞的PowerShell文件的名稱。

因此從本質上講,在命令行上看起來像這樣:

e:> test.bat Process.ps1

現在,腳本可以正常運行。 但是,我需要在批處理文件(test.bat)中傳遞第二個參數(%2),所以它看起來像這樣:

Powershell.exe -File %1 %2

%1是Process.ps1

%2將是某個多維數據集名稱(即CUBE1)

因此在CMD上最終看起來像這樣:

e:> test.bat Process.ps1 CUBE1

現在,如何將第二個參數(CUBE1)傳遞到在PowerShell腳本(Process.ps1)中聲明的變量( $CUBE )?

我在論壇上進行了研究,但找不到像我自己的案例那樣的例子。

這可能是我很想念的非常簡單的事情,但是我是PowerShell / batch腳本的新手,所以我無法完全掌握答案。

有兩種方法。 首先是使用Parameter聲明:

Param(
    [Parameter(mandatory)]
    [String]
    $first,
    [Parameter(mandatory)]
    [String]
    $second
)
Write-Output "First argument: " $first
Write-Output "First argument: " $second

第二個是內置的$args變量:

Write-Output "First argument: " $args[0]
Write-Output "Second argument: " $args[1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM