什么是 PowerShell?_typora powershell时什么-程序员宅基地

技术标签: powershell  windows  

目录

功能

安装

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系列文章

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42350212/article/details/127374392

智能推荐

利用ajax实现省市县三级联动之二,三_jsp ajax省市县三级联查-程序员宅基地

文章浏览阅读1.3k次。 原文出处:http://www.3gput.com/forum.php?mod=viewthread&tid=145今天继续昨天的,在这里给大家介绍剩下的两种方法: 第一种,是通过返回字符串实现的,代码如下:Code: san-area-html2.html > html xmlns="http://www_jsp ajax省市县三级联查

android.permission.MOUNT_UNMOUNT_FILESYSTEMS添加权限报错-程序员宅基地

文章浏览阅读2.7k次。<!--这是在sd卡内创建和删除文件权限--><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /><uses-permission android:name="android.permission.WRITE_SETTINGS" />出现报错有两种解决方法:方法一:File -> Settings -> Editor -> Insp.

mongodb 日期分组聚合_mongodb 聚合查询-按日期分组统计 和对应mongoTemplate写法-程序员宅基地

文章浏览阅读2.4k次。1.$match 定义查询条件db.collection.aggregate({"$match":{"merchno" : "1561985080187","createTime": {$lte:ISODate("2019-07-03T15:59:59.000Z"),$gte: ISODate("2019-07-02T16:00:00.000Z")}}})对应的mongoTemplate 写法Ag..._mongodb 按日期分组并统计数据求和,其中日期按自定义格式来定义

高通 msm平台GPIO相关的device tree设置 (device tree 操作实例1)-程序员宅基地

文章浏览阅读440次。转载于:http://blog.csdn.net/viewsky11/article/details/53402536GPIO相关的dvice tree设置和interrupt设置gpoi号以及gpio相关的属性设置以tsp的proxy_en端口为例:i2c@78b6000 { /* BLSP1 QUP2 */ compatible = "qcom,i2c-msm...

07.Vue3.x 实现一个完整的toDoList(待办事项) 【前面知识综合练习】_todo list :vue 待办事项-程序员宅基地

文章浏览阅读655次。一、Vue中集成Sass/Scss1.1 安装sass-loader node-sassnpm install -D sass-loader node-sass安装完启动项目如果出现"Syntax Error: TypeError: this.getOptions is not a function"的错误,可能是sass-loader版本太高卸载了重新安装低版本# 卸载当前sass-loadernpm uninstall --save sass-loader# 重新安装低版本npm _todo list :vue 待办事项

DOM操作中浏览器兼容问题_dom-to-image.min.js ie-程序员宅基地

文章浏览阅读177次。// 封装函数// myGetStyle 获取标签样式函数// @param object element 需要获取css样式的标签对象// @param string style 需要获取的css样式的属性// @return string 返回制订标签对象指定属性对应的属性值字符串// 可以兼容低版本IEL浏览器function myGetStyle(element,style){if(window.getComputedStyle){ // 转化为true 证明是标准浏览器._dom-to-image.min.js ie

随便推点

C++ 并发指南<future>(2)std::packaged_task-程序员宅基地

文章浏览阅读1.8k次。std::packaged_task 包装一个可调用的对象,并且允许异步获取该可调用对象产生的结果,从包装可调用对象意义上来讲,std::packaged_task 与 std::function 类似,只不过 std::packaged_task 将其包装的可调用对象的执行结果传递给一个 std::future 对象(该对象通常在另外一个线程中获取 std::packaged_task 任务的执行结果)。std::packaged_task 对象内部包含了两个最基本元素:被包装的任务(stored _std::packaged_task

Android点击事件之多点触摸与手势识别-程序员宅基地

文章浏览阅读2.7k次,点赞4次,收藏15次。前言最近遇到想要实现三指滑动监听的需求,实现代码不方便贴出来,但是思路还是可以记录一下。Muilti-touch 双指缩放探索首先要实现OnTouchListener接口,然后重写方法:public boolean onTouch(View v, MotionEvent event); 从这个方法中我们就可以获取实现两指缩放功能的全部信息。View v是触发事件的源,MotionEvent event即一个触摸事件。对屏幕的几乎所有操作都会触发事件,如点击、放开、滑动等。不同的

maven插件之maven之maven-surefire-plugin_the parameter forkmode is deprecated since version-程序员宅基地

文章浏览阅读6k次。1.maven-surefire-plugin是个什么鬼?如果你执行过 mvn test 或者执行其他maven命令时跑了测试用例,你就已经用过 maven-surefire-plugin 了。 maven-surefire-plugin 是maven里执行测试用例的插件,不显示配置就会用默认配置。这个插件的 surefire:test 命令会默认绑定maven执行的 test 阶段。_the parameter forkmode is deprecated since version 2.14. use forkcount and r

LCD 移植的那些坑-LCD屏幕配置常见的问题解决方案_lvds hspw-程序员宅基地

文章浏览阅读3.5k次,点赞3次,收藏34次。在使用飞凌嵌入式开发板过程中,关于LCD屏幕配置有一些常见的问题问题1,如何修改开机默认的屏幕尺寸?全平台都可以通过uboot的选择菜单来选择默认的显示,对应配置方式可以参阅对应平台的应用手册。i.MX6DL/i.MX6Q系列uboot已开源,可以通过直接修改uboot源码文件include/configs/mx6sabre_common.h(参考linux4.1.15内核版本)如果是客..._lvds hspw

街景字符编码识别项目学习笔记(三)_convnext能不能用作汉字识别-程序员宅基地

文章浏览阅读344次。学习目标:学习CNN基础和原理;使用Pytorch框架构建CNN模型,并完成训练1 卷积神经网络CNN1.1 CNN简介卷积神经网络(简称CNN)是是一类特殊的人工神经网络,是深度学习中重要的一个分支。它专门用来处理具有类似网格结构的数据,比如说时间序列数据(可以认为是在时间轴上有规律地采样形成的一维网格)以及图像数据(二维像素网格)。CNN在很多领域都表现优异,精度和速度比传统计算学习算法高很多。特别是在计算机视觉领域,CNN是解决图像分类、人脸识别、图像检索、物体检测和语义分割的主流模型。近._convnext能不能用作汉字识别

电子白板是什么?-程序员宅基地

文章浏览阅读469次。电子白板是汇集了尖端电子技术、软件技术等多种高科技手段研发的高新技术产品,它通过应用电磁感应原理,结合计算机和投影机,可以实现无纸化办公及教学。电子白板由普通白板发展而来,最早出现的电子白板为复印型电子白板,随着技术的发展及市场的需要,出现了交互式的电子白板。目前市场上这两种电子白板并存,以下分别介绍这两类电子白板。 复印式电子白板 所谓复印式电子白板即通过用户的简单操作便可将白板上书写的内容通过一定的方式扫描并打印出来。其功能完成过程与普通的复印过程一样,首先由图像传感器件对白板上的内容进行采集,采集信号_电子白板是什么