为了顺应当前形势和更好的发展,黑基网已于9月19日正式更名为【安基网】,域名更换为www.safebase.cn,请卸载旧的APP并安装新的APP,给您带来不便,敬请理解!谢谢

黑基Web安全攻防班
安基网 首页 IT技术 网络管理 查看内容

PowerShell简介

2018-7-16 01:31| 投稿: xiaotiger |来自: 互联网

摘要: PowerShell(包括Windows PowerShell and PowerShell Core)是微软公司开发的任务自动化和组态管理框架,由.NET Framework和.NET Core是构建的命令行界面壳层相关脚本语言组成,最初仅Windows组件,后于2016年8月18 ...


PowerShell(包括Windows PowerShell and PowerShell Core)是微软公司开发的任务自动化和组态管理框架,由.NET Framework和.NET Core是构建的命令行界面壳层相关脚本语言组成,最初仅Windows组件,后于2016年8月18日开源并跨平台支持。

快速预览: 最新测试版发行日期, 编程范型 …

在PowerShell中,管理任务通常由cmdlets(发音为command-lets)执行,这是执行特定操作的专用.NET类。可以将cmdlet集合至脚本、可执行文件(一般是独立应用程序)中,或通过常规.NET类(或WMI / COM对象)实例化。通过访问不同数据存储中的数据由PowerShell运行,如资源管理器或注册表。

源起与目的

UNIX系统一直有著功能强大的壳程式(shell),Windows PowerShell的诞生就是要提供功能相当于UNIX系统的命令列壳程式(例如:sh、bash或csh),同时也内建脚本语言以及辅助脚本程式的工具。

程式特性

一致性的设计让所有工具和系统资料的使用语法、命名原则都相同。

脚本语言简单易学,而且能支援现有的脚本程式和命令列工具。

内含129种称为cmdlet的标准工具,可用来处理常见的系统管理工作。

具备完整的扩充功能,独立软体商或开发者都能很容易的自行扩充。

进程间数据传递内容具有强类型特征。

cmdlet是Windows PowerShell的指令,发音念法为command-let。这相当于DOS或其他壳程式的内建指令,指令名称的格式都是以连字号(-)隔开的一对动词和名词,并且通常都是单数名词;例如线上查询说明的cmdlet指令为get-help,名称的动词部分大致有get、set、add、remove等等(字母都不分大小写)。

Windows PowerShell ISE是Windows PowerShell的主机应用程序。在此程序中,可以在单个Windows GUI中运行命令、编辑与测试脚本。此程序具有多行编辑、Tab补齐、上下文相关帮助、语法着色、选择性执行等功能,而且还支持从右到左的书写顺序等功能。

技术基础

Windows PowerShell是以.NET Framework技术为基础,并且与现有的WSH保持回溯相容,因此它的脚本程式不仅能存取.NET CLR,也能使用现有的COM技术。同时也包含了数种系统管理工具、简易且一致的语法,提升管理者处理,常见如登录资料库、WMI。Exchange Server 2007以及System Center Operations Manager 2007等伺服器软体都将内建Windows PowerShell。

�6�7

范例

获取所有命令:

PS> Get-Command

查看Get-Command命令的用法:

PS> Get-Help Get-Command

停止所有目前执行中的以"p"字元开头命名的程式:

PS> get-process p* | stop-process

停止所有目前执行中的所有使用大于1000MB记忆体的程式:

PS> get-process | where { $_.WS -gt 1000MB } | stop-process

计算一个目录下档案内的位元组大小:

PS> get-childitem | measure-object -property length -sum

等待一个叫做"notepad"的程式执行结束:

PS> $processToWatch = get-process notepad

PS> $processToWatch.WaitForExit()

将"hello, world!"字串转为英文大写字元,成为"HELLO, WORLD!":

PS> "hello, world!".ToUpper()

在字串"string"的第1个字元后插入字串"ABC",成为"sABCtring":

PS> "string".Insert(1, "ABC")

订阅一个指定的RSS Feed并显示它最近8个主题:

PS> $rssUrl = "http://blogs.msdn.com/powershell/rss.aspx"

PS> $blog = [xml](new-object System.Net.WebClient).DownloadString($rssUrl)

PS> $blog.rss.channel.item | select title -first 8

把"$UserProfile"设定成数值"UserProfile"的环境变数:

PS> $UserProfile = $env:UserProfile


小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

本文出自:https://www.toutiao.com/a6577846428733800964/

免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部