PowerShell为什么强大

简介:

微软是一个很”低调”的公司,取名为微软,感觉有“微微软下去”的意思,这是个玩笑了。windows 操作系统 和office办公软件,如此之优秀,微软也没敢命名为PowerOS 和 PowerOffice,但是在Monad(PowerShell的前身)发布后的第二年(2006年),微软就直接就发布了Windows PowerShell 1.0,并且”大言不惭“地命名为PowerShell,这也有点太不淡定了。

今天我根据自己的体验来稍微总结一下为什么PowerShell如此之强大。

为什么PowerShell如此之强大

为什么PowerShell如此之强大?

破天荒的方便

诸如存储计算中GB,MB,KB单位等;数组声明中的1..n和下标为-1的处理;还有所见即所得,通俗易懂的动词+名词结构Cmdlet。

面向对象

与面向过程相比,面向对象更方便更容易描述现实世界,也算赶上了时髦。

绑上.NET这棵大树

正所谓大树下面好乘凉,PowerShell绑上.NET这个大款了,借助.NET Framework平台强大的类库,几乎让一切都成为可能。

强大的兼容性

完全兼容windows 平台上其它调用,如可执行文件(exe),批处理bat和vb script等。

基于平台的可扩展性

微软有个优点,与应用相比,它更喜欢做平台。PowerShell早已变成一个平台,在PowerShell 刚发布的第二年,微软的System Center Operations Manager 和 SharePoint就提供了针对该平台的组件,后来的活动目录,Hyper-V,Windows Azure,Office 365就更不用说了。除了微软,亚马逊的云平台管理,Dell的out-of-hand 管理,也都提供了基于PowerShell的管理组件。PowerShell 俨然变成了一个标准,变成了一个规范。

举例介绍

如果您第一次听说过PowerShell,想稍微观望下,且看下面的10个例子。

  1. [数学计算]  (39+79-51)*497/28 = ?
    心算再快,应当也没有敲回车键快吧:

    1
    2
    PS> (39+79-51)*497/28
    1189.25
  2. [日期] 距离下一个情人节还有多少分钟?
    我知道距离多少天好算,如果变成分钟呢?


    1
    2
    3
    4
    5
    6
    7
    8
    $now = Get-Date
    $day = [datetime] '2-14'
    if ( $now -lt $day ){
      $day .Subtract( $now ).TotalMinutes
    }
    else {
      $day .AddYears(1).Subtract( $now ).TotalMinutes
    }
  3. [容量]  3GB > 3145726KB吗  ?

    1
    2
    PS> 3gb  -gt 3145726kb
    True
  4. [ID]能产生一个GUID吗?

    1
    2
    3
    4
    5
    PS>  [guid] ::NewGuid()
     
    Guid
    ----
    0f283ab4-f402-400c-98ce-359442f11f1a
  5. [文件] Windows目录下所有可执行文件exe的大小是多少?

    1
    dir  $env:windir -Filter *.exe | measure -Sum Length
  6. [注册表]  注册表路径HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework 下  ‘Enable64Bit’的值是多少?

    1
    ( Get-ItemProperty -Path hklm:SOFTWARE\Microsoft\.NETFramework ).Enable64Bit
  7. [证书]  指纹为[28DE15612AFF1CD69596AB17AF06AE86CB9C003B]的证书在证书存储区吗?

    1
    2
    ls Cert:\LocalMachine\My\ |
      where {  $_ .Thumbprint  -eq '28DE15612AFF1CD69596AB17AF06AE86CB9C003B' }
  8. [服务]  打印机服务有没有启动呢?

    1
    Get-Service spooler
  9. [进程]  当前运行了多少个IE进程?

    1
    ( Get-Process iexplore ).count
  10. [报表]  将所有运行的进程信息导出为HTML报表?

    1
    Get-Process ConvertTo-Html Out-File a.html

更多内容请参阅:PowerShell在线教程

本文链接: http://www.pstips.net/why-is-powershell-powerful.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
















本文转自babylater51CTO博客,原文链接:  http://blog.51cto.com/babylater/1919425
,如需转载请自行联系原作者



相关文章
|
7月前
|
存储 人工智能 缓存
大模型存储的 “最后一公里” :蚂蚁大模型存储加速系统 PCache 如何解决万亿参数训练难题?
本文尝试通过当前学术和工业界在大模型存储领域的关注点和相关工作,并结合蚂蚁大模型训练场景实际的需求和问题,来介绍蚂蚁是如何在多云环境里构建一套具备高可用性、高性能以及低成本的云原生 AI 存储加速系统 PCache;并通过该存储方案在蚂蚁支持了百亿文件规模的多模态和万亿参数的 MOE 训练任务。
|
JavaScript 前端开发 Linux
【好玩的开源项目】Linux系统之部署捕鱼达人经典小游戏
【7月更文挑战第20天】Linux系统之部署捕鱼达人经典小游戏
387 8
|
8月前
|
SQL Java 数据库连接
【YashanDB数据库】由于网络带宽不足导致的jdbc向yashandb插入数据慢
由于网络带宽不足导致的jdbc向yashandb插入数据慢
|
11月前
|
前端开发 JavaScript C#
基于.NET8+Vue3开发的权限管理&个人博客系统
基于.NET8+Vue3开发的权限管理&个人博客系统
159 7
|
12月前
|
开发框架 Java UED
如何使用 Spring Boot 实现异常处理
如何使用 Spring Boot 实现异常处理
482 2
|
Web App开发 安全 前端开发
新一代WebOffice高版本谷歌Chrome打开、编辑、保存微软Office/金山WPS解决方案大盘点
随着互联网技术的不断发展,越来越多的企业开始采用在线办公模式,微软Office Word 是最好用的文档编辑工具,然而doc、docx、xls、xlsx、ppt、pptx等格式的Office文档是无法直接在浏览器中直接打开的,如果可以实现Web在线预览编辑OffIce,肯定会还带来了更高效、便捷的办公体验,为我们的工作带来了更多可能性。
1429 99
|
数据安全/隐私保护 Python
如何使用Python自动发送邮件?
如何使用Python自动发送邮件?
414 1
|
JavaScript 前端开发 开发者
JavaScript是一种轻量级的解释型编程语言
【5月更文挑战第22天】JavaScript是一种轻量级的解释型编程语言
161 4
|
移动开发 JavaScript 前端开发
【热门话题】Vue.js:现代前端开发的轻量级框架之旅
Vue.js,由尤雨溪于2014年创建,是一个轻量级的前端框架,因其简洁API、高效渲染和组件系统深受全球开发者喜爱。本文探讨Vue的核心理念、技术架构、开发实践及在现代Web开发中的应用。Vue遵循渐进式框架思想,提供声明式编程、组件化和响应式数据绑定。技术上,它采用双向数据绑定、虚拟DOM和生命周期钩子。开发实践中,Vue CLI和Vuex、Vue Router分别加速开发和管理状态、路由。Vue不仅适用于单页应用,还支持多页应用、移动开发和跨平台项目,拥有丰富的社区生态和插件。随着Vue 3的推出,Vue将持续创新并影响前端开发领域。
368 0