将枚举值传递给 PowerShell 中的函数

2024-02-06

我有一个接受枚举值作为参数的函数。举个例子,考虑一下这样的事情:

(PS) > function IsItFriday([System.DayOfWeek] $dayOfWeek) { 
    if($dayOfWeek -eq [System.DayOfWeek]::Friday) {
        "yes"
    } else {
        "no"
    } 
}

现在,如果我像这样调用它,一切都很好:

(PS) > $m = [System.DayOfWeek]::Monday
(PS) > IsItFriday $m
no

但是如果我调用直接传递枚举值的函数,我会得到一个相当神秘的错误:

(PS) > IsItFriday [System.DayOfWeek]::Monday
IsItFriday : Cannot convert value "[System.DayOfWeek]::Monday" to type "System.DayOfWeek" 
due to invalid enumeration values. Specify one of the following enumeration values and 
try again. The possible enumeration values are "Sunday, Monday, Tuesday, Wednesday, 
Thursday, Friday, Saturday".
At line:1 char:11
+ IsItFriday  <<<< [System.DayOfWeek]::Monday

使用枚举值初始化变量和直接传递枚举值有什么区别?


这有点出乎意料 - 您需要将其括在括号中,以便计算该值:

> IsItFriday ([System.DayOfWeek]::Monday)

也可以只传递这样的字符串:

> IsItFriday Monday
no
> IsItFriday Friday
yes

PowerShell 会将其转换为枚举类型。方便,不是吗:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将枚举值传递给 PowerShell 中的函数 的相关文章

  • MyBatis 枚举的使用

    我知道以前有人问过这个问题 但我无法根据迄今为止找到的信息实施解决方案 所以也许有人可以向我解释一下 我有一个表 状态 它有两列 id 和 name id是PK 我不想使用 POJO Status 而是使用枚举 我创建了这样一个枚举 如下所
  • 无法在 cmd 中通过管道传递 cmdlet 对象

    我正在使用这个 powershell 命令来获取特定的用户配置文件 获取 WmiObject Class Win32 UserProfile Where Object LocalPath eq C Users Pela 但是当我通过调用 p
  • 如何在 PowerShell 中将长命令拆分为多行

    如何在 PowerShell 中获取如下所示的命令并将其拆分为多行 C Program Files IIS Microsoft Web Deploy msdeploy exe verb sync source contentPath c w
  • () 和 $() 之间的区别[重复]

    这个问题在这里已经有答案了 有什么区别 Write Host Get Date just paren and Write Host Get Date dollar paren 括号内的内容可以是任何内容 仅举一个简单的示例 两者有什么区别吗
  • 全局变量用例

    我有几个脚本和模块 它们使用全局变量来完成很多事情 我的日志记录可以采用以下三种形式之一 简洁 详细和验证 没有实际操作的详细日志记录 仅验证提供的数据 我还有许多函数 它们根据运行的上下文 用户或机器 而做出不同的响应 并且正在执行的操作
  • Start-Job 输出去了哪里?

    W gt job start job Write Output hi there throw an error Wait Job W gt job select State Failed HasMoreData True StatusMes
  • 如何使用PowerShell脚本远程启动/停止IIS 6.0/7.0?

    我有两台服务器服务器 A 和服务器 B 我想使用 Powershell 脚本从服务器 B 远程停止服务器 A 最简单的方法之一就是使用命令行执行PsExec http www microsoft com technet sysinterna
  • 如何从 Java 中的常量向注释提供枚举值

    我无法使用从常量获取的枚举作为注释中的参数 我收到此编译错误 注释属性 attribute 的值必须是枚举常量表达式 这是枚举代码的简化版本 public enum MyEnum APPLE ORANGE 对于注释 Retention Re
  • 枚举上的 random.choice

    我想用random choice on an Enum I tried class Foo Enum a 0 b 1 c 2 bar random choice Foo 但是这段代码失败了KeyError 我怎样才能随机选择一个成员Enum
  • 相当于 UNIX diff 和 patch 的本机 PowerShell

    我需要潜在地修补文件作为脚本的一部分 为了使脚本所做的事情更具可读性 我想以类似于 UNIX diff 和 patch 方法的方式来实现它 在标准 UNIX 系统上 diff 可以生成特殊格式的文本文件 表示两个文件之间的差异 这可以与要修
  • 在 angular2 视图模板中传递枚举

    我们可以在 angular2 视图模板中使用枚举吗 div class Dropdown div 传递字符串作为输入 enum DropdownType instrument account currency Component selec
  • 如何判断枚举属性是否已设置? C#

    我有一个具有枚举属性的类 如下所示 public class Foo public Color ColorType get set public enum Color Red Green 现在这个类可以像这样初始化 var foo new
  • 如何在 Powershell 中自动对提示回答“是”?

    如何在 PowerShell 会话中输入 是 作为交互式问题的答案 我知道 在 Bash 中 Yes是在提示上回答 是 的工具 在我的情况下 我无法抑制提示 我正在运行的脚本停止于 如果您想继续 请回复 是 powershell 如何运行脚
  • 一般处理枚举的 Scala 类

    我想创建一个通用类来保存枚举的值 并且还允许访问枚举的可能值 以属性编辑器为例 您需要知道属性的当前值 并且还需要能够知道该属性的其他合法值 并且枚举的类型不应该提前知道 您应该能够使用任何类型的枚举 我的第一个想法是这样的 class E
  • Powershell脚本将多个远程地址添加到防火墙规则

    我正在尝试编写一个脚本 该脚本将循环遍历本地防火墙规则并更新远程地址表 这是我到目前为止所拥有的 它不起作用 应该很简单 所以不确定发生了什么 该脚本运行时没有错误 但实际上并没有更新任何内容 name Get NetFirewallRul
  • 如何使用Powershell变量打开Edge?

    我已经尝试过以下方法 edge New Object com microsoft edge application edge visible true edge FullScreen true 但我收到错误 New Object Retri
  • Powershell - 从图像网址下载图像

    对 powershell 的了解有限 我尝试从图像网址下载图像 例如这样 http hdwallpaperia com wp content uploads 2014 01 Mc Laren P1 Wallpaper Image Pictu
  • C# 从整数反序列化枚举

    是否可以从 C 中的 int 反序列化枚举 例如如果我有以下课程 class Employee public string Name get set public int EmployeeTypeID get set 我可以轻松地从 XML
  • 如何使用类在 PowerShell 中实现事件处理

    我希望能够创建一个自定义事件 该事件将触发订阅该事件的函数或对象 我查看了一些功能 例如 New Event and Register ObjectEvent 但我不完全确定如何有效地将它们组合在一起 我想要的想法是让一个函数在引发某个事件
  • 具有多个范围的 Powershell 整数参数验证

    我知道您可以声明一个仅接受特定范围内的值的整数参数 Parameter ValidateRange 1024 66535 Port 是否可以验证多个范围的参数输入 例如 假设我希望允许端口输入为 1 到 80 135 到 445 以及 10

随机推荐

  • Python 获取选定的文本

    我如何使用 Python 捕获 用户在 Web 浏览器中选择的文本 该脚本将在后台闲置 当按下某个组合键时 它会 获取 用户选择的文本 想想复制和粘贴 只是它复制到我的应用程序而不是剪贴板 谢谢 我想指出的是 这适用于 Mac Instal
  • 当应用程序外部数据库上的数据发生更改时,如何刷新 React Redux 应用程序

    场景 数据库中某些表的数据更改 例如使用从另一个进程上传的文件 例如不属于react redux应用程序的ETL工具 那么我们如何刷新react redux应用程序组件呢 Web 套接字是唯一将这种更改从服务器推送到客户端的方法吗 或者我们
  • 外部文件中的嵌套/内部类

    我有课MyClass和一个内部类MyNestedClass像这样 public class MyClass public class MyNestedClass 两堂课的时间都很长 因此 我想将它们分成两个不同的文件 而不破坏层次结构 这是
  • “已达到 10 $digest() 迭代。正在中止!”由于使用 angularjs 进行过滤

    看看以下内容 https dl dropbox com u 4571 musicopeTypescript musicopeTypescript index html https dl dropbox com u 4571 musicope
  • WTP - m2e 不部署传递依赖项

    我有一个网络应用程序 其结构如下 A jar gt B war gt C war 我正在使用 Eclipse Juno 和WTP版本是1 1 A jar 是一个工作区实用程序项目 包含在 B war 中 B war 是一个战争项目 作为覆盖
  • RabbitMQ 中的主题交换与直接交换

    我们有一个将使用 RabbitMQ 的应用程序 并且有几个不同的队列用于在层之间传递消息 最初 我计划使用多个直接交换 每种消息类型一个 但看起来使用不同路由键绑定的队列的单个主题交换将实现相同的效果 拥有一个单一的交换似乎也更容易维护 但
  • F# 和 Clojure 调用重新定义函数时的差异

    In F gt let f x x 2 val f int gt int gt let g x f x val g int gt int gt g 10 val it int 12 gt let f x x 3 val f int gt i
  • DwmGetWindowAttribute 使用 PInvoke 返回 0

    我试图通过捕获特定窗口来进行屏幕捕获 并且为了准确地计算出要捕获的窗口的大小 我想使用 DwmGetWindowAttribute 当我在 Windows 10 上使用 PInvoke 调用此函数时Rect即使结果值为 0 成功 结构也始终
  • 简单注入器:如何注入HttpContext?

    我已经开始使用 Simple Injector 作为我的 DI 容器 主要是出于性能原因 如果有人有建议 请告诉我 但我编写的一些类使用 HttpContextBase 作为构造函数参数 我现在已经解决了从构造函数中删除它并创建一个属性的问
  • Amazon S3 签名 URL 和 Cloudfront - 访问被拒绝

    我正在创建一个signed url使用以下内容 AWS ACCESS KEY ID my access key AWS SECRET ACCESS KEY my secret access key KEYPAIR ID my keypair
  • 如何创建堆叠折线图 D3,多个 Y 轴和公共 X 轴

    我正在尝试使用 d3 创建一个折线图 该折线图将有多个 y 轴 但有一个公共 x 轴 有人可以为我提供如何使用 D3 库创建它的示例吗 它应该如下所示 很简单 只需绘制 2 个图表 但仅附加一个 x 轴 这里有一个小提琴可以帮助您入门 ht
  • C++ 无法计算包含向量大小的公式?

    int main vector
  • Visual Studio 使用标准格式复制/粘贴到 Outlook 中?

    我在 Visual Studio 中有包含深色背景的自定义设置 复制 粘贴到 Outlook 会对邮件的白色背景上的代码中的深色背景产生视觉犯罪 有谁知道如何以标准和格式粘贴代码 不是特殊粘贴中的未格式化文本 也不使用我的自定义 VS 格式
  • 如何在滚动运算符中访问多列?

    我想在 pandas 中进行一些滚动窗口计算 需要同时处理两列 我举一个简单的例子来清楚地表达问题 import pandas as pd df pd DataFrame x 1 2 3 2 1 5 4 6 7 9 y 4 3 4 6 5
  • Django 多对多模型 DRF

    我有以下模型结构 class Project models Model author models ManyToManyField Account name models CharField max length 40 default Ne
  • 如何在View和ViewModel之间传递数据

    我是 MVVM 设计模式的新手 我正在尝试创建一个简单的应用程序 其中主窗口中显示学生列表 我希望用户能够将新学生添加到我已完成的列表中绑定学生数据所在的可观察集合 但如何通过从文本框中获取数据并将其用作命令中的参数来创建新用户 这是我的观
  • 如何测试飞行路线迁移?

    通常迁移脚本很简单 例如添加新列等 如果应用程序已部署 则一切正常 但有时需要测试一些复杂的逻辑 推荐的方法是什么 有一个单独的数据库用于测试 将其作为每个构建的一部分进行迁移 并针对它运行测试 您还可以根据需要添加额外的测试数据 包括用于
  • Laravel Sanctum 可以使用 Multiauth 防护

    我正在用 laravel sainttum 进行测试 但这里有一些问题 我正在创建管理员警卫 当我将中间件更改为 auth sanctum admin 它应该只能由管理员访问 但在这里我可以使用带有网络防护的普通用户帐户进行访问 我不知道为
  • 有没有一种方法可以创建一个 pandas 数据框,其行是整数,这些整数会增加直到每行达到某个值?

    例如 假设我有整数数组 5 3 7 6 4 我希望找到一种有效的方法来创建如下所示的 pandas 数据框 数据帧中的第一行应包含数字 1 到 5 第二行应包含数字 1 到 3 依此类推 有没有办法在不循环的情况下实现这一目标 一个简单的单
  • 将枚举值传递给 PowerShell 中的函数

    我有一个接受枚举值作为参数的函数 举个例子 考虑一下这样的事情 PS gt function IsItFriday System DayOfWeek dayOfWeek if dayOfWeek eq System DayOfWeek Fr