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. BootCDNApi使用记录

    通过API获取BootCDN所加速的所有前端开源库的基本信息和文件列表 API 将一下API链接中的.min字样去掉后,获取到的JSON格式的返回信息是经过良好的格式化的,便于查看. 所有开源库简要信 ...

  2. HDU暑假多校第八场G-Card Game

    一.题意 给出N个卡牌,卡牌的正反两面具有两个数字,取值范围为[1,2*n],给出若干个默认正面向上的卡牌,求最小反转多少张卡牌可以使得,每张卡牌朝上的面上都有一个不同的数字,同时满足最小反转次数的反 ...

  3. shell -- if参数用法

    一.概要1.if与[之间要有空格2.[]与判断条件之间也必须有空格3.]与:之间不能有空格 二.对字符串的判断1.if [ str1=str2 ];then fi  ----当两个字符串相同时返回真2 ...

  4. 「Haskell 学习」二 类型和函数(上)

    随着学习的深入,笔记会补充和修订.当然,这个补充修订也许会鸽,但我一定会坚持写完. 这个笔记假定你至少学过C/C++及Python,或与这两种语言类型相同的语言. 类型系统概述 “Haskell’s ...

  5. 使用git创建分支

    Git大法好--3.Git分支本地操作详解 这时已经切换到了dingBranch分支下面了,在项目文件夹下添加一个dingBranchtest.txt文件,然后提交到本地仓库和远程仓库: git ad ...

  6. Python 3 学习笔记之——键盘输入和读写文件

    1. 键盘输入 Python提供了 input() 内置函数从标准输入读入一行文本,默认的标准输入是键盘.input 可以接收一个 Python 表达式作为输入,并将运算结果返回. str = inp ...

  7. 深度可分卷积(Depthwise Separable Conv.)计算量分析

    上次读到深度可分卷积还是去年暑假,各种细节都有些忘了.记录一下,特别是计算量的分析过程. 1. 标准卷积和深度可分卷积 标准卷积(MobileNet论文中称为Standard Convolution, ...

  8. Git的使用和部署

    Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). 什么是版本控制系统? 没有版本控制系统 有了版本控制系统 版本 文件名 用户 说明 日期 1 service.doc 张三 ...

  9. Go基础篇【第8篇】: 内置库模块 bytes [一]

    bytes包实现了操作[]byte的常用函数.本包的函数和strings包的函数相当类似. func Compare func Compare(a, b []byte) int Compare函数返回 ...

  10. Manacher算法——最长回文子串

    一.相关介绍 最长回文子串 s="abcd", 最长回文长度为 1,即a或b或c或d s="ababa", 最长回文长度为 5,即ababa s="a ...