什么是 PowerShell?

Posted 罗四强

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是 PowerShell?相关的知识,希望对你有一定的参考价值。

目录

功能

安装

Windows

其他操作系统

适用于 Visual Studio Code 的 PowerShell 扩展

什么是 cmdlet?

cmdlet 名称

后续步骤

推荐学习


PowerShell 由命令行 shell 和脚本语言两部分组成。 它最初是一种框架,用于在 Windows 中自动执行管理任务。 PowerShell 现已发展为一种跨平台工具,用于执行多种任务。

命令行 shell 缺少图形界面,让你无法使用鼠标与图形元素进行交互。 相反,你需要在计算机控制台中键入文本命令。 下面是使用控制台的一些优点:

  • 与控制台交互通常比使用图形界面快。
  • 在控制台中,可以运行成批命令,因此它非常适合用于持续集成管道的任务自动化。
  • 你可使用控制台与云资源和其他资源交互。
  • 可在文本文件中存储命令和脚本,并使用源代码管理系统。 这可能是最大的优点之一,因为你的命令可重复且可审核。 在许多系统(特别是政府系统)中,必须跟踪和评估或审核一切内容。 审核涵盖了从数据库更改到脚本所做的更改的所有内容。

功能

PowerShell 通过传统 shell 共享某些功能:

  • 内置帮助系统:大多数 shell 都有一些帮助系统,你可以在其中了解有关命令的详细信息。 例如,你可以了解命令的作用以及它支持的参数。 PowerShell 中的帮助系统提供有关命令的信息,并与联机帮助文章集成。
  • 管道:传统 shell 使用管道按顺序运行多个命令。 一个命令的输出是下一个命令的输入。 PowerShell 实现了传统 shell 传达的这种概念,但它又有所不同,因为它对文本上的对象进行操作。 本模块稍后会详细介绍此功能。
  • 别名:别名是可用于运行命令的替代名称。 PowerShell 支持使用常见别名,如 cls(清除屏幕)和 ls(列出文件)。 因此,对于熟悉的命令,新用户可利用其对其他框架的知识,而不必记住 PowerShell 名称。

PowerShell 不同于传统的命令行 shell,具体体现在以下几方面:

  • 它对文本上的对象进行操作。 在命令行 shell 中,你必须运行输出和输入可能不同的脚本,因此你最终会对输出进行格式化并提取所需的数据。 而在 PowerShell 中,可以使用对象作为输入和输出。 这意味着格式设置和数据提取所需时间会更少。

  • 它具有 cmdlet。 PowerShell 中的命令称为 cmdlet(念作 commandlet)。 与其他许多 shell 环境不同,在 PowerShell 中,cmdlet 是在常见运行时而不是单独的可执行文件上生成的。 此特性在参数分析和管道行为方面提供了一致的体验。

    Cmdlet 通常采用对象输入并返回对象。 PowerShell 中的核心 cmdlet 是在 .NET Core 中生成的,采用的是开放源代码形式。 你可以使用来自社区和其他来源的更多 cmdlet、脚本和函数来扩展 PowerShell,也可以在 .NET Core 或 PowerShell 中生成自己的 cmdlet。

  • 它具有多种类型的命令。 PowerShell 中的命令可以是本机可执行文件、cmdlet、函数、脚本或别名。 运行的每个命令都属于这些类型之一。 由于 cmdlet 是一种命令,因此,命令和 cmdlet 通常可互换使用。

安装

在此模块中,你将练习如何在计算机上使用 PowerShell。 PowerShell 可用于多种平台,但如果你使用的计算机运行的是 Linux、macOS 或早期版本的 Windows,则需要安装它。

每个 OS 对安装 PowerShell 的说明各不相同。 在继续之前,请花几分钟时间安装 PowerShell 或验证 PowerShell 安装。 此模块的下一个单元将介绍如何验证你的安装。

Windows

如果运行的是 Windows 8 或更高版本,则应已安装名为 Windows PowerShell 的 PowerShell 版本。 此版本与最新的 PowerShell 版本略有不同,但它可用于学习目的。

可从“开始”菜单打开 Windows PowerShell。

其他操作系统

如果你的计算机运行的不是 Windows 8 或更高版本,则需要安装 PowerShell。 若要查找针对你的 OS 的安装说明,请参阅安装各种版本的 PowerShell

适用于 Visual Studio Code 的 PowerShell 扩展

建议你使用适用于 Visual Studio Code 的 PowerShell 扩展来创作 PowerShell 脚本和运行此模块中的命令。 使用此扩展,可运行命令,还有助于执行代码片段、完成代码以及突出显示语法。

PowerShell 命令称为 cmdlet(读作 command-let)。 除了 cmdlet 外,使用 PowerShell 还可以在系统上运行任何可用命令。

什么是 cmdlet?

cmdlet 是本机 PowerShell 命令,而不是独立的可执行文件。 cmdlet 收集在 PowerShell 模块中,可按需加载。 可以用任何编译的 .NET 语言或 PowerShell 脚本语言本身来编写 cmdlet。

cmdlet 名称

PowerShell 使用“动词-名词”名称对来命名 cmdlet。 例如,PowerShell 中包含的 Get-Command cmdlet 用于获取在命令行界面中注册的所有 cmdlet。 谓词标识 cmdlet 执行的操作,名词标识该 cmdlet 执行其操作的所在资源。

后续步骤

若要详细了解 PowerShell 以及如何查找其他 cmdlet,请参阅 PowerShell 点滴教程探索 PowerShell

有关创建自己的 cmdlet 的详细信息,请参阅以下资源:

基于脚本的 cmdlet

编译的 cmdlet(PowerShell SDK 文档)

推荐学习

1、Windows域策略设置方法大全

2、Windows专栏

Windows服务器各种骚操作及维护合集

https://blog.csdn.net/weixin_42350212/category_7702659.html

3、Windows AD域控/Exchange管理专栏

https://blog.csdn.net/weixin_42350212/category_10959170.html

4、PowerShell自动化专栏

https://blog.csdn.net/weixin_42350212/category_10649706.html

pygame系列文章

以上是关于什么是 PowerShell?的主要内容,如果未能解决你的问题,请参考以下文章

PowerShell和Python能结婚吗?听说他们是相同类型啊,为啥不能,他们互补,非常和谐。

PowerShell和Python能结婚吗?听说他们是相同类型啊,为啥不能,他们互补,非常和谐。

PowerShell和Python能结婚吗?听说他们是相同类型啊,为啥不能,他们互补,非常和谐。

在别人word中复制的东西粘贴到自己word文档中时在非白色底色的情况下显示为白色,请问如何解决?

从亚马逊云科技“12字战略”,看企业数字化转型的“基座”与“底色”

如何快速把证件照换底色背景?