PowerShell

PowerShell 在 .NET Framework 基础之上构建,是一种基于任务的命令行 Shell 脚本语言;专门面向系统管理员和高级用户,可快速自动化多个操作系统(Linux、macOS、Unix 和 Windows)和这些操作系统上运行的应用程序相关进程的管理。

PowerShell 是开放源代码

PowerShell 基本源代码目前在 GitHub 中提供,且对社区贡献开放。 请参阅 GitHub 上的 PowerShell 源

可以从获取 PowerShell 中的所需位数入手。 或者快速查看入门

PowerShell 设计目标

PowerShell 旨在消除长期存在的问题和添加新功能,从而改进命令行和脚本环境。

可发现性

PowerShell 简化了它的功能发现过程。 例如,若要查找用于查看和更改 Windows 服务的 cmdlet 列表,请键入:

Get-Command *-Service

发现完成任务的 cmdlet 后,可以运行 Get-Help cmdlet 来详细了解此 cmdlet。 例如,若要显示 Get-Service cmdlet 的帮助信息,请键入:

Get-Help Get-Service

大多数 cmdlet 会发出对象,这些对象可获得操作,然后再呈现为显示文本。 若要全面了解此 cmdlet 的输出,请将它的输出通过管道传递给 Get-Member cmdlet。 例如,下面的命令显示 Get-Service cmdlet 的输出对象成员的相关信息。

Get-Service | Get-Member

一致性

管理系统是一项复杂的任务,具有一致的接口的工具有助于控制固有的复杂性。 遗憾的是,命令行工具和可脚本化 COM 对象的一致性均未知。

PowerShell 一致性是它的主要资产之一。 例如,如果了解如何使用 Sort-Object cmdlet,可以利用这一知识对任何 cmdlet 的输出进行排序。 不需要了解每个 cmdlet 的不同排序例程。

此外,cmdlet 开发人员无需为其 cmdlet 设计排序功能。 PowerShell 包含提供基本功能的框架,并强制在接口的多个方面保持一致。该框架消除了通常留给开发人员的某些选择,但它也因而使得开发可靠的和易于使用的 cmdlet 变得简单得多。

交互式脚本编写环境

PowerShell 是组合的交互式脚本编写环境,便于用户访问命令行工具和 COM 对象,并使用 .NET Framework 类库 (FCL) 的强大功能。

此环境改进了 Windows 命令提示,它将提供具有多个命令行工具的交互式环境。 它还改进了 Windows 脚本宿主 (WSH) 脚本,让你可以使用多个命令行工具和 COM 自动化对象,但不提供交互式环境。

通过结合使用以上所有功能,PowerShell 可以扩展交互用户和脚本编写者的能力,并提高系统可管理性。

面向对象

尽管可以在文本框中键入命令与 PowerShell 交互,PowerShell 仍以对象(而不是文本)为基础。 命令的输出是一个对象。 可以将输出对象发送给另一个命令以作为其输入。 因此,PowerShell 为使用过其他命令行管理程序的用户提供熟悉界面,同时引入新的强大命令行范例。 它让你能够发送对象而不是文本,从而扩展了在命令之间发送数据的概念。

轻松转换到脚本

借助 PowerShell,可以从以交互方式键入命令轻松转换为创建和运行脚本。 可以在 PowerShell 命令提示符处键入命令,从而发现执行某项任务的命令。 然后,你可以在将这些命令保存到副本或历史记录中,然后将其复制到文件以用作脚本。

详细内容

https://docs.microsoft.com/zh-cn/powershell/scripting/powershell-scripting?view=powershell-6

PowerShell官方文档的更多相关文章

  1. 【AutoMapper官方文档】DTO与Domin Model相互转换(上)

    写在前面 AutoMapper目录: [AutoMapper官方文档]DTO与Domin Model相互转换(上) [AutoMapper官方文档]DTO与Domin Model相互转换(中) [Au ...

  2. 2DToolkit官方文档中文版打地鼠教程(三):Sprite Collections 精灵集合

    这是2DToolkit官方文档中 Whack a Mole 打地鼠教程的译文,为了减少文中过多重复操作的翻译,以及一些无必要的句子,这里我假设你有Unity的基础知识(例如了解如何新建Sprite等) ...

  3. 2DToolkit官方文档中文版打地鼠教程(二):设置摄像机

    这是2DToolkit官方文档中 Whack a Mole 打地鼠教程的译文,为了减少文中过多重复操作的翻译,以及一些无必要的句子,这里我假设你有Unity的基础知识(例如了解如何新建Sprite等) ...

  4. 2DToolkit官方文档中文版打地鼠教程(一):初始设置

    这是2DToolkit官方文档中 Whack a Mole 打地鼠教程的译文,为了减少文中过多重复操作的翻译,以及一些无必要的句子,这里我假设你有Unity的基础知识(例如了解如何新建Sprite等) ...

  5. 【AutoMapper官方文档】DTO与Domin Model相互转换(中)

    写在前面 AutoMapper目录: [AutoMapper官方文档]DTO与Domin Model相互转换(上) [AutoMapper官方文档]DTO与Domin Model相互转换(中) [Au ...

  6. 【AutoMapper官方文档】DTO与Domin Model相互转换(下)

    写在前面 AutoMapper目录: [AutoMapper官方文档]DTO与Domin Model相互转换(上) [AutoMapper官方文档]DTO与Domin Model相互转换(中) [Au ...

  7. Ionic2系列——Ionic 2 Guide 官方文档中文版

    最近一直没更新博客,业余时间都在翻译Ionic2的文档.之前本来是想写一个入门,后来觉得干脆把官方文档翻译一下算了,因为官方文档就是最好的入门教程.后来越翻译越觉得这个事情确实比较费精力,不知道什么时 ...

  8. Kotlin开发语言文档(官方文档)-- 目录

    开始阅读Kotlin官方文档.先上文档目录.有些内容还未阅读,有些目录标目翻译还需琢磨琢磨.后续再将具体内容的链接逐步加上. 文档链接:https://kotlinlang.org/docs/kotl ...

  9. 一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍

    我们在前一篇文章微软新神器-Power BI,一个简单易用,还用得起的BI产品中,我们初步介绍了Power BI的基本知识.由于Power BI是去年开始微软新发布的一个产品,虽然已经可以企业级应用, ...

随机推荐

  1. 【Leetcode】647. Palindromic Substrings

    Description Given a string, your task is to count how many palindromic substrings in this string. Th ...

  2. Druid时序数据库升级流程

    目前Druid集群版本为0.11.0,新版本0.12.1已支持Druid SQL和Redis,考虑到Druid新特性以及性能的提升,因此需要将Druid从0.11.0版本升级到0.12.1版本,下面将 ...

  3. [转]Visual Studio 项目类型 GUID 清单

    转自:https://www.codeproject.com/Reference/720512/List-of-Visual-Studio-Project-Type-GUIDs Complete li ...

  4. vs调试代码的时候断点无法命中

    https://blog.csdn.net/xxdddail/article/details/18696399 该链接提供的解决方案主要是如下图片:禁用 图片标记的这个选项即可:

  5. spring 读取properties文件--通过注解方式

    问题: 需要通过properties读取页面的所需楼盘的名称.为了以后便于修改. 解决: 可以通过spring的 PropertiesFactoryBean 读取properties属性,就不需要自己 ...

  6. Python-学习-小例子练习

    网上了点小例子,练习一下下,都是特别简单的.而且这些代码也都是找的网上的代码,目的是在于练习一下Python和熟悉下Python的编码风格等等 学习一门语言,最快的方法就是把它用在世界的开发中,这样才 ...

  7. cocos2d-x 中菜单类

    菜单相关类包含:菜单类和菜单项类,菜单类图,从类图可见Menu类继承于Layer. 菜单项类图,从图中可见所有的菜单项都是从BaseMenuItem继承而来的,BaseMenuItem是抽象类,具体使 ...

  8. JavaSE复习(四)File类与IO流

    File类 构造方法 public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例. public File(String parent ...

  9. maven仓库地址

    使用Maven进行开发的时候,比较常见的一个问题就是如何寻找我要的依赖,比如说,我想要使用activeMQ,可是我不知道groupId,artifactId,和合适的version.怎么办呢?本文介绍 ...

  10. 【Linux】Linux修改openfiles后不生效问题?

    #次故障问题环境背景: Centos7.4物理机,升级过ssh和ntp: #一般只需要在此文件后面添加4行就行,配置后即可生效(exit再次登录即可生效),此次配置后没生效,reboot还是没生效,在 ...