写点什么

为什么是 Cmdlets?

  • 2007-07-13
  • 本文字数:749 字

    阅读完需:约 2 分钟

Jeffrey Snover 描述了使用Cmdlets 和APIs 之间的区别。他总结说,“Cmdlets 是特别为系统管理人员(Admins)用键盘操作而设计的,而APIs 不是。Cmdlets 是PowerShell 的核心和精神。”

Cmdlets 是从 Cmdlet 或者 PSCmdlet 基类继承创建的。而这两个类都是通过重写 BeginProcessing、ProcessRecord 和 EndProcessing 等虚函数实现的。

这些类因它们暴露的 PowerShell 底层多少而有所区别。但是 Cmdlet 是轻量级的,能被其他的 Cmdlets 所调用, PSCmdlet 为 PowerShell 运行时,包括环境变量和 Session 状态,提供访问接口。

Jeffrey Snover 通过阐述在 PowerShell 环境下 Cmdlet 所获得的更好支持,来支持他的观点。下面是他的一些主要论点:

  • 命名。Cmdlet 的命名是明确的,能让系统管理员轻松地知道应该使用哪些命令。Cmdlets 的命名模式是动名词性质的,而且对动词的使用有很好的使用指南。参数的使用指南也很丰富。相对而言,APIs 就不是那么智能。
  • Tab 键完成(Tab-Completion)。PowerShell 为 Cmdlets 和参数提供了 Tab 键完成,而没有为 APIs 提供。
  • 帮助。Cmdlets 提供了面向系统管理员的智能的帮助。APIs 提供的是面向开发人员的帮助。
  • 发现能力。PowerShell 提供了大量对系统管理人员友好的方式,以找到像 Get-Command、Get-Help(这两个都支持 wildcards)以及 See-Also 等这样的 Cmdlets 帮助。
  • APIs 只能抛出错误,而 Cmdlets 能区分中断和非中断错误。非中断错误能更好地支持大量操作,并允许操作在收集所有的要素并组合成集合之后继续进行。
  • 通道。通过使用 Cmdlets 可以支持 PIPELINE 输入。APIs 却需要用户做一些编程工作以获得类似的结果。

Jeffery 还提到说,“在 2.0 版本里,Cmdlets 和 APIs 之间的差距会越来越大。那时,会有一些重要的函数只在 Cmdlets 里才存在。”

查看英文原文: Why Cmdlets?

2007-07-13 00:331201

评论

发布
暂无评论
发现更多内容

从技术到人文,找打理想团队,互联网众包平台祝您软件开发无忧虑

知者如C

万界星空科技生产管理MES系统的数据追溯技术

万界星空科技

mes 云mes 追溯系统 产品追溯 万界星空科技mes

WorkPlus安全专属移动数字化航空母舰,助力企业掌控业务和生态

BeeWorks

如何配置支付宝密钥之如何配置证书|保姆级教学(二)

盐焗代码虾

证书 支付宝 经验分享 密钥

平安人寿基于 Apache Doris 统一 OLAP 技术栈实践

SelectDB

数据库 大数据 数据仓库 数据分析 apache doris

继电器的工作原理与应用案例

华秋电子

继电器

Sermant框架下的服务治理插件快速开发及使用指南

华为云开源

开源 云原生 微服务治理 sermant

用友BIP,助力轴承行业数智化转型

用友BIP

数智化转型

硬件开发少走弯路,来华秋这场研讨会提升技能

华秋电子

工程师

超级APP,All in one APP

BeeWorks

WorkPlus定制化的沟通协作平台,助您实现企业级完全掌控

BeeWorks

解读 Swagger enum:完整示例教程

Liam

前端 swagger Enum API 文档 #程序员

推送效率低?MobPush带着APP消息推送一站式解决方案来了

MobTech袤博科技

大数据

iOS应用加固方案解析:ipa加固安全技术全面评测

SATA硬件驱动器接口的可制造性问题详解

华秋电子

SATA

AntDB-M高性能设计之hash索引动态rehash

亚信AntDB数据库

数据库 AntDB 亚信科技AIDB数据库 AntDB数据库

双十一剁手节,MobPush助力各大电商平台提前锁定潜力用户

MobTech袤博科技

大数据

如何构建新一代实时湖仓?袋鼠云基于数据湖的探索升级之路

袋鼠云数栈

数据仓库 数据湖 湖仓一体 大数据仓库 实时湖仓

武创院区块链产业研究所:基于鲲鹏DevKit开发区块链政务服务协同数据治理平台,数据管理更放心

彭飞

Amazon Bedrock 划算吗?Bedrock 大模型服务定价与分析

魏临

华润啤酒走进用友,数智化赋能酒业新世界

用友BIP

服务器删除文件后磁盘空间没有立刻释放问题

javaNice

Java Linux

为什么是Cmdlets?_.NET_Jonathan Allen_InfoQ精选文章