微软准备开源PowerShell

近日微软再次在向开源投出橄榄枝, PowerShell是面向Windows和WindowsServer的自动化平台和脚本语言,帮助用户简化系统的管理。在纳德拉的带领下微软也逐渐走向开放,根据相关爆料称微软有计划在近期内开源该脚本语言。
知名Windows爆料人士WalkingCat和TomHounsell在推文都分享了他们的发现。Tom在包的元数据说明中注意到这样一段话:”PowerShell是开源、跨平台、脚本语言和丰富的对象Shell。”但是目前尚未得到微软官方证实。
[callout class=”danger” title=””]问:微软的PowerShell脚本语言已经开源了?
[/callout]
答:绝对真的!已经!
[callout class=”danger” title=””]问:源码在哪?[/callout]
答:微软.net源码网站。
[callout class=”danger” title=””]问:为什么在哪里?[/callout]
答:powershell本身是基于.net的。是【System.Management】其中的一个类。
[callout class=”danger” title=””]问:powershell源码如何看?[/callout]
答:在namespaces搜索栏输入
【System.Management.Automation.PowerShell】
【System.Management.Automation.ScriptBlock】等。
[callout class=”danger” title=””]问:powershell有什么特色?[/callout]
答:cmd(bat)中有命令行管道。vbs中有面向对象。powershell相当于bat+vbs。既有命令行和管道,又有面向对象。并极大增强了命令。相当于linux中的bash+python。
面向对象比字符串增加了属性和方法。返回的属性,比字符串粒度更小,更严禁细致。让你写脚本不用扣字符串。方法让你不用编程,就有相关功能。
[callout class=”danger” title=””]问:能否介绍下windows命令行的历史?[/callout]
答:win2000时代:基本上只有图形功能,而对应的命令缺失。
win2003时代:图形功能,基本都有对应的命令。但只限于win。
win2008时代:除了win之外的微软软件中。图形功能,而对应的命令基本全了。但还都是面向字符串的。
win2012时代:重新造所有轮,用所有powershell命令代替所有字符串命令。使windows命令行全面进化到【面向对象】阶段。
winxp:cmd命令行。
win7:基本powershell。
win8.1:全面【面向对象】。
win10:更全面,连剪贴板都面向对象了!
[callout class=”danger” title=””]问:powershell的缺点是什么?[/callout]
答:依赖高版本windows。
[callout class=”danger” title=””]问:兼容老版CMD?[/callout]
答:1语法不兼容cmd和bat。powershell语法更佳。
2所有外部命令都兼容。比如ping.exe等。
[callout class=”danger” title=””]问:powershell源码的字体和配色,看起来有点矮丑挫,咋办?[/callout]
答:用powershellise高大上【字体+配色文件】。
[callout class=”danger” title=””]问:powershell比CMD(bat)强在哪?[/callout]
答:
1语法方面。语法简单。有函数,功能强大。
2有正则,有查找,替换,切割,有大字符串对象,更适合于处理字符串。
3有多线程并发,多进程并发。有计时器。有图形界面。
[callout class=”danger” title=””]问:powershell比python如何?[/callout]
答:
1python可以跨平台,powershell暂时不能,这是缺点。
2powershell为win峰。win本地深耕比python深。而python有些独有的linux功能powershell没有。
2.1有管理dns服务器,dhcp服务器,打印机,网卡,域服务器,exchange服务器管理命令。这些python不行。
2.2.net内置图形界面【System.Windows.Forms】powershell开发图形界面比python容易。
3手册中文,开发工具中文,调试功能佳。不容易乱码等。
[callout class=”danger” title=””]问:powershell比linuxbash如何?[/callout]
答:
1bash中没有属性方法,python中没有管道命令行。假如python带有命令行管道,bash跪不?
2bash中有多线程,计时器,图形界面?
[callout class=”danger” title=””]问:我听说linux命令比win多,更全,对么?[/callout]
答:
win中命令更多,更全面,linux不行。
1powershell命令比linux多得多。
2linux软件中,很多命令缺失。不能【修改软件运行时的配置】。
2.1上述exchange服务器,命令手册在:   https://technet.microsoft.com/zh-cn/library/bb124413.aspx   500多条命令,哪个linux邮件服务器能比?
2.2给bind服务器中的一个dns域中的一个域名,添加一个ip。如何用命令实现?
3linux软件依赖配置文件,但是有些命令只能【修改软件运行时的配置】。而没有【导出单个配置到文件】,【导出所有配置到文件】的功能。
3.1win2012中的iis管理命令中有Backup-WebConfiguration,Clear-WebConfiguration,Get-WebConfiguration,Restore-WebConfiguration。这些命令
今年出的nginx中有对应的命令么?
[callout class=”danger” title=””]问:powershell能管理linux么?[/callout]
答:可以的。
powershell的做法是外部合作,而不是内部取代bash。
1通过【powershelldsc】或【powershell+sftp客户端】来推拉配置文件。
2通过【ssh客户端模块】,模拟linux终端。远程调用linux内置的bash,python等,返回结果。
[callout class=”danger” title=””]问:我只有winxp,2001年出的,没装powershell,没有curl,就没法用powershell了吧?[/callout]
答:可以的。
还是用外部合作的办法。通过http(s),用b/s的方法访问。
1找一台有高版本win的电脑或虚拟机,在上面安装上支持powershell的http服务器。如:
http://www.poshserver.net/           这个软件支持http,https,php,powershell,自定义端口,win认证。
2在bat中用mshta(http://powershell服务器ip/xxx.ps1″get-date”)之类的命令即可。
[callout class=”danger” title=””]问:powershell的强项优势是什么?[/callout]
答:
1.net在win中的性能【应该最佳】,强于java和python。用同样语句,用同样对象的powershell脚本,我测了几个,比py稍
快。(未做定论)个人认为是虚拟机优化的最好的原因。
2开发winform,wpf图形界面。或者即是命令行,又是图形程序。(类似于ghost.exe)
3powershell多线程可以用多核。
4win系统管理最强,绝大数微软软件。
5管理vmware,微软云,亚马逊云,和云中的虚拟机。
[callout class=”danger” title=””]问:将来powershell会进入安卓,macosx么?
[/callout]
答:不知道。
但powershell会进入物联网系统。win11iot?将来树莓派应该可以用上。

© 版权信息:
作者:PANGSHARE
发布平台:PANGSHARE | 文章链接:https://www.pangshare.com/%e5%be%ae%e8%bd%af%e5%87%86%e5%a4%87%e5%bc%80%e6%ba%90powershell/
本文内容仅限非商业性使用,如需商用(包括但不限于广告投放、付费专栏、企业宣传等),请邮件联系原作者获得独家授权,违者将依法追究法律责任。

(0)
打赏 微信扫一扫 微信扫一扫
如何在Excel中实现级联菜单
上一篇 2016年4月19日 下午6:40
wordpress与Active Directory集成身份认证
下一篇 2016年8月13日 上午11:45

相关推荐

  • 如何在Excel中实现级联菜单

    很长一段没更新雨说,很长一段时间没更新胖胖减肥记,但我每天都会登陆上来看看有没有朋友的留言,虽然每天都看不到浏览吧。哈哈今天在工作上遇到一个自己提给自己的需求,那就是如何在Exce…

    2016年4月19日
    7.6K00
  • 如何在KVM上部署Windows10

    KVM是什么KVM即Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。…

    2015年9月1日
    24.6K20
  • Exchange 2016 预览版部署 – 系统要求

    今天收到通知,Exchange 2016 预览版公布了,作为ITPRO要做什么?对啊,必须测试啊,但是切记不要手欠部署到生产系统中,否则你会很酸爽,关于Exchange 2016之…

    2015年7月23日
    7.2K00
  • 15条备份和恢复建议

    2015 年的关键目标是保护关键数据和应用程序免受灾难和数据丢失的影响、缩短备份时段、紧跟数据量增长步伐、实现快速恢复以及提高备份效率。为协助您在 2015 年实现这些目标以及其他…

    2015年9月1日
    6.8K00
  • Centos 7部署iTop之环境部署(LNMP)

    跟大家分享一下如何在Centos 7下面部署LNMP及构建虚拟主机和创建基于PHP构建的网站,如wordpress、iTop。

    开源运维 2016年7月24日
    9.5K00
  • 微软技术的误解和偏见

    到目前为止,软件授权费用仍是微软的主要收入来源。微软自己的软件卖的很好,同时,在他造就的平台中,提供丰富多彩也高效好用的开发工具,也十分注重培养开发人员的培养。直至今日,企业解决方…

    2015年9月4日
    7.6K00
  • WordPress迁移Azure介绍

    本次要跟大家分享的是WordPress迁移至Windows Azure的过程,从基础讲起,在分享的过程中,对于我也是一个知识沉淀的过程,本系列教程首发站点为雨说博客,为了提高访问量…

    微软技术 2015年1月20日
    7.6K00
  • 如何控制公有云资源浪费

    今天雨说博客跟大家做一个技术分享,公有云服务正在众多行业领域中被广泛地应用着,但是一个扩散化的服务将使得公有云应用程序的开发增加成本和混乱。这里有10个切实可行的策略,它们可以帮助…

    2015年8月31日
    7.1K00
  • 离开企业的庇护,你还好吗?

    此时此刻,相信大家都非常关注疫情的发展,紧张着急的心情我们都非常理解。但此时我们对于网络上的信息获取还是要保持冷静的。不要随便打开链接、邮件等内容。 目前就有一些攻击者利用这个机会…

    2020年2月6日
    5.2K00
  • 安装Exchange 2013后AD中有什么变化

    安装 Exchange 2013 时,将会更改您的 Active Directory 林和域。Exchange 执行此操作是为了使其可以存储关于组织中 Exchange 服务器、邮…

    2014年7月24日
    12.9K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论列表(1条)

  • 依云的头像
    依云 2017年4月12日 下午1:45

    回答者好无知的感觉……
    Python 有管道,虽然没多少人用。
    Linux shell 可以通过专用控制命令(主要为服务)或者 D-Bus(主要为桌面程序)与运行中的进程交互。
    Python 的乱码问题是因为 Python 2 及 Windows 的原因。Python 3 + UTF-8 locale 从来不乱码。
    bash 面向进程的,当然没有多线程。也只有 Windows 和 Java 那么喜欢多线程。多进程可以用 parallel。定时器 zsh 是支持的,bash 你可以手动用 sleep 造一个,又不难。图形界面有 zenity 之类的工具。

技术交流

有任何问题都能在评论区留言呀~ 小编看到会第一时间回复!

工作时间:周一至周五,9:30-18:30,节假日休息