设为首页 收藏本站
查看: 734|回复: 0

PowerShell学习的一小步,工作的一大步

[复制链接]

尚未签到

发表于 2018-9-2 08:30:45 | 显示全部楼层 |阅读模式
  现在标题不起的应景,基本就没有访客和流量了。本文首发盆盆的公众号,可以转载,但需要注明出处和作者九叔
  本文提到了盆盆的公众号,因为源代码也在那里发布。
  本文不装逼,只讲干货。希望作为系统工程师或者ITPro的你,加入到学习PowerShell的行列当中。
  我们通过PowerShell来做一个小程序。实现什么功能呢?我们用它来查看Windows的计划任务。完成计划任务的一些常见运维操作。
  首先我们看看操作界面,如果对这个界面都不满意,那基本就不要往下看了。PowerShell做出来的图形化程序,标准造型都是这个样子的,有变化,但是不会太多。(如果想要更加个性化的,定制化图形界面,也可以,但是这属于UI和美工的工作了,我相信多数人不能胜任)
DSC0000.png

  PowerShell的图形工具,用什么开发?
  首先我们要介绍一下今天所用到的开发工具 PowerShell Studio 2015 ,这是除了ISE之外,我用的另一个开发工具。和ISE相比,它写图形界面非常简单。所做的基本就是拖拽一下控件就可以了。在微软的脚本库里面,也有不少的作者是用这个工具做的开发。而且它上手非常简单。如果是写PowerShell,同时想写图形化程序。那么PowerShell Studio 2015是最好的选择,没有之一。
  PowerShell为什么要写图形化工具
  我想大家都知道,在企业中,作为一个小工程师,你不是一个人在战斗,你会遇到很多人很多事。如果你只能写命令行的脚本完成工作,当然也可以。但是要知道更多的人是不懂这些的,它们需要简单的工具去完成基本工作,所以,写个图形化工具可以帮助你提升自己的社会地位。”人被需要才有价值”
  项目背景:做这个工具的时候,起因很诡异。那是因为我有一台Windows 8的电脑做文件服务器。用Windows8做文件服务器是个很简单的工作,但是问题也有。那就是磁盘动不动就转,导致我担心硬盘寿命,同时对于噪音也比较讨厌。
  所以最初的目的,我只是想优化一下系统,解决Windows8没事老读取磁盘的问题。
  你看,需求就是这么奇葩。在盆盆的群里面也大概了解了一些方法,无外乎停止一些服务,处理一些计划任务。
  但是新的问题来了,Windows8的计划任务远比你想象的要多。如果你想每一个计划任务都看一下,学习一下,很明显这样鼠标一步步的点过去就消耗掉所有的耐心。
  这个工具写起来不是太复杂,我感觉我的效率比较低,大概用了不到一天时间。
DSC0001.png

  项目目标:因为以上原因,我做了这个小工具,目标也很明确

  •   针对特定的几个服务,也就是让Windows8硬盘不停读取的服务,我设置一些按钮,一键关闭。
  •   能够列表所有计划任务,我需要在一个视图中展示所有数据,这一点是微软原装MMC所没有的功能。
  •   可以单选、多选删除不需要计划任务。或者禁用它
  我觉得程序作为图形化入门还是不错的,整体只有278行。同时我也会提供原始的代码。方便大家学习。
DSC0002.png

  注意的细节:
  200行总不能一行行介绍,在阅读代码之前,需要你对PowerShell有一定了解,或者能够看懂PowerShell。毕竟PowerShell的图形化,前提是PowerShell。
  对了,在窗体的load中,我们设置下面这条语句,可以解决在运行ps1文件时执行权限不足的问题,这种设置有一定风险,但是比较简单。大家可以尝试一下。
DSC0003.png

  举个栗子:
  比如这个一键关闭xxx,界面是这样的,作用是点击一个按钮,实现多种功能。
DSC0004.png

  在PowerShell Studio 中,我们双击superfetch按钮,就可以进入到这个按钮的”点击”后的动作。这里可以针对点击”superfetch”按钮后所进行的操作进行配置。
  可以看到,这里的一键关闭服务。只是两条cmd命令。在PowerShell中调用CMD命令,需要使用 cmd /c 的方式运行。
DSC0005.png

  工具是农历年之前就做好的,但是文章到3月底才写。对不住了各位。
  微软云方案高端顶级群【236804566】分享成就牛B之路
  欢迎关注新浪微博 @肥九叔

  •   《微软System Center 2012 R2私有云部署实战》现已上市


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-561345-1-1.html 上篇帖子: PowerShell 替换 Office365 用户主邮件地址 下篇帖子: Azure File 服务(2):使用Powershell开发管理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表