1

如何$ConfirmPreference从用 C# 编写的二进制 Powershell 模块中获取全局变量的值,例如从 Powershell 主机获取?

4

1 回答 1

2

PSCmdlet.GetVariableValue(string)方法可用于:

using System.Management.Automation;

namespace MyModule
{

    [Cmdlet(VerbsDiagnostic.Test, "GetVariableValueMethod")]
    public class TestGetVariableValueMethod : PSCmdlet
    {
        protected override void ProcessRecord()
        {
            ConfirmImpact confirmPref =
                (ConfirmImpact)this.GetVariableValue("global:ConfirmPreference");
            WriteObject(confirmPref);
        }
    }
}

在 Powershell 中进行测试:

PS > Test-GetVariableValueMethod
High

PS > $ConfirmPreference = 'Low'

PS > Test-GetVariableValueMethod
Low
于 2016-06-24T14:20:44.590 回答