下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.5 PowerShell入局

PowerShell 语言出现在Windows平台上已经相当久了,从Windows 7出来后就内置了Power-Shell 1.0版本。在当前Windows 平台自动化运维概念的驱使下,掌握了PowerShell语言就真正掌握了Windows 平台的自动化运维。很多人目前没有意识到PowerShell可以胜任这么多任务。你可能不会编程序,但是也可以使用PowerShell。你可能对CMD Shell 比较头疼,但是PowerShell的自然语言模式可以让你更加简单地完成工作。PowerShell 能够完成以下工作。

· 定时监控服务器状态。

· 实现办公自动化。

· 实现数据库的数据写入。

· 结合PowerBI可以实现企业微监控看板。

……

看到这些能力,你会不会对学习PowerShell 有所期待呢?当看完本书,相信你可以从另外一个角度去发现PowerShell自动化运维之美,将重复性执行的任务编程作为可以定期自动化执行的脚本。

PowerShell的出现,让管理员们看到微软比较大的变化,每一条命令都非常类似于自然语言。命令的执行过程中不知道参数,直接按Tab键就可以显示出来。脚本写起来非常方便,命令的执行也变得非常简单,而且PowerShell可以直接调用微软相关程序的接口。试想一下,上面提到的批量创建用户的命令,如果改为PowerShell来编写,我们会发现如图1.7所示的简洁美。

图1.7 基于PowerShell的简洁代码

相信很多朋友一定会惊讶,PowerShell写法竟然如此简单!而且看起来比较规范,也比较容易理解,相比起来CMD Shell太难懂了。PowerShell的出现解决了CMD Shell 给管理员带来的一些困扰和难题,这些难题都是使用CMD Shell 编写代码过程中经常碰到的问题。

· 语句可读性差:PowerShell 自然语言,很容易理解。

· 多语言支持:支持多语言编码的编写和数据输出,让乱码不再出现。

· 命令使用更加简洁:动词+名词的方式让用户理解起来更加简单。

· 引入了语句块模式:按照语句块的要求来实现代码总体编写。

· 更接近于.Net的框架语言:语法规范和习惯与.Net编程语言相近。

· 面向对象进行操作:所有的操作都是面向对象处理。

下面这张图片显示了PowerShell可以支持和处理的业务场景,来看看是不是有你需要的内容。PowerShell 针对微软系列产品提供的天然支持让编写脚本更加简单,安全、无毒、无害成为Windows编写脚本过程的标配,图1.8所示为PowerShell支持的管理方向和对象。

图1.8 PowerShell支持的管理对象和方向

PowerShell 作为一个不算太热门的语言,目前在国内的关注度也不是很高,但是非常意外的是在Tiobe 的编程语言Index 指数中,排在了第38位,这也是一个相当不错的成绩,图1.9所示为PowerShell编程语言位于Tiobe Index的排名位置(2021年9月)。

图1.9 Tiobe Index 中PowerShell 位置

PowerShell 完善了CMD Shell 在多个方向的不足,成为新一代的平台标准语言。讲了这么多PowerShell 语言的优势,有朋友一定会有疑问,我学了Python,不用学习PowerShell了吧?这里的回答是:当然还要学习!为什么呢?原因非常简单,PowerShell对微软产品的兼容性相比Python强太多,在没有Python的环境下PowerShell就是不二选择。那么PowerShell 和Python到底有些什么不同,它们可以一起使用吗?我相信很多人都会有这种困扰,接下来讲解Python 和PowerShell的差别。 rA0/xNz+3IXadJL/CPkRbXH7ygZVIuJDZ9tMhfyyKgcDtc1TPVvTtkI1U60jHMHz

点击中间区域
呼出菜单
上一章
目录
下一章
×