2017-06-21 9 views
0

PowerShellスクリプトには、コマンドのリストが定義されています。 私はGitlab CIでビルドステップを作成しようとしていますが、実行すると特定のスクリプトが実行されます。 これは私が最初に理解したいのは Powershellの特定のコマンド/機能をコマンドラインから実行するには?Powershellの特定のコマンド/機能をコマンドラインから実行するには?

私は Invoking a specific function from PowerShell script from C#Calling Powershell functions from C#

答えはC#に固有のものを読んだことがあります。 コマンドラインから実行できる方法はありますか?

コードはこれと少し似ています(myPowerScript.ps1) 私のPowerShellスクリプトには複数の機能があります。それは次のようなものです:

私はfoo2を呼び出したいです:どうすればいいですか?この場合、 はどの関数が呼び出されるのかPowerShellがどのように理解していますか?

+0

[powershell.exe](https://msdn.microsoft.com/en-us/powershell/scripting/core-powershell/console/powershell.exe-command-line-help)を起動してください。 –

+0

PowerShellコンソール_は、コマンドラインです。 –

答えて

0

あなたのスクリプト "stuff.ps1":

Param($Parameter1, 
     $Parameter2) 

function Do-Stuff 
param($Parameter1, 
     $Parameter2) 

#do stuff 
} 

Do-Stuff "Value1" "$Value2" 

は、コマンドラインから、あなたのpsのスクリプトを実行します。

powershell.exe -file "stuff.ps1" "ValueforParam1" "ValueForParam2" 
+0

私はpowershellスクリプトに複数の機能を持っています。 機能foo1の{ のParam($パラメータ1、 $パラメータ2)# #のFOO1実装 } 機能foo2は{ のParam($パラメータ1、 $パラメータ2)# #のfoo2は実装 } :それはのようなものです function foo3 { Param($ Parameter1、 $ Parameter2)# #Fo31の実装 }この場合、どの関数が呼び出されるのか、powershellはどのように理解していますか? –

+0

実行する関数を定義するいくつかのパラメータを設定します。If($ this -eq that){#呼び出し関数} – guiwhatsthat

0

これは動作します:

powershell -command "& { script1.ps; My-Func }" 

例:

powershell -command "& { mypowerScript.ps; foo2 }" 
関連する問題