[解決済み] グローバル変数名が関数に渡された変数である関数からPowerShellのグローバル変数を設定する
2022-03-07 05:40:36
質問
関数からグローバル変数を設定する必要があるのですが、その方法がよくわかりません。
# Set variables
$global:var1
$global:var2
$global:var3
function foo ($a, $b, $c)
{
# Add $a and $b and set the requested global variable to equal to it
$c = $a + $b
}
関数を呼び出す。
foo 1 2 $global:var3
最終結果
$global:var3 は 3 に設定されます。
あるいは、このように関数を呼び出したら。
foo 1 2 $global:var2
最終結果
$global:var2 は 3 に設定されます。
この例で理解していただけたでしょうか?この関数に渡される3番目の変数は、設定する変数の名前です。
解決方法は?
を使用することができます。
Set-Variable
コマンドレットを使用します。 渡すのは
$global:var3
を送信します。
値
の
$var3
これは、あなたが望んでいることではありません。 あなたが送りたいのは
名前
.
$global:var1 = $null
function foo ($a, $b, $varName)
{
Set-Variable -Name $varName -Value ($a + $b) -Scope Global
}
foo 1 2 var1
しかし、これはあまり良いプログラミングのやり方ではありません。 下の方がずっとわかりやすいし、後でバグが発生する可能性も低くなります。
$global:var1 = $null
function ComputeNewValue ($a, $b)
{
$a + $b
}
$global:var1 = ComputeNewValue 1 2
関連
-
[解決済み] powershell で再利用するために資格情報を保存すると、ConvertTo-SecureString : Key not valid for use in specified state というエラーが発生する。
-
[解決済み] PowerShellで、変数が数値を保持しているかどうかをテストするにはどうすればよいですか?
-
[解決済み] PowerShellで"%"(パーセント)は何をするのですか?
-
[解決済み] PowerShellでファイルを一行ずつ読み込む
-
[解決済み] PowerShellでショートカットを作成する方法
-
[解決済み] PowerShellでLDAPクエリ
-
[解決済み] Powershell New-ScheduledTaskTrigger -RepetitionIntervalを使った反復タスクの実行
-
[解決済み] グローバル変数名が関数に渡された変数である関数からPowerShellのグローバル変数を設定する
-
[解決済み】PowerShellスクリプトを実行する方法
-
[解決済み】PowerShellで、ファイルに関数を定義して、PowerShellのコマンドラインから呼び出すにはどうしたらいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] powershellでパラメータ'Path'がNULLのため引数を結合できないエラーの取得
-
[解決済み] xPath を使用する Powershell スクリプトの .SelectSingleNode が web.config ファイルから値を抽出する際に動作していない
-
[解決済み] Get-ADUser でのエラー: 無効な列挙コンテキスト
-
[解決済み] Powershell - 空のパイプ要素は許可されません。
-
[解決済み] PowerShellで使用できるすべての色のリスト?
-
[解決済み] Powershell New-ScheduledTaskTrigger -RepetitionIntervalを使った反復タスクの実行
-
[解決済み] powershell内でキーストロークを実行する方法は?
-
[解決済み] PowerShellでコマンド出力に改行を追加するにはどうすればよいですか?
-
[解決済み] PowerShellの画面を各コマンドの前に自動的にクリアする方法はありますか?
-
[解決済み】PowerShellの関数の戻り値について