作者:PowerShll傳教士
?
問:微軟的PowerShell腳本語言已經開源了 ?
答:絕對真的!已經!
?
?
問:源碼在哪?
答:微軟.net源碼網站。?? http://referencesource.microsoft.com/
?
?
問:為什么在哪里?
答: powershell本身是基于.net的。是【System.Management】其中的一個類。
?
?
問:powershell源碼如何看?
答:在 namespaces 搜索欄輸入??
【System.Management.Automation.PowerShell】
【System.Management.Automation.ScriptBlock】 等。
?
?
問:powershell有什么特色?
答:
cmd(bat)中有命令行管道。vbs中有面向對象。 powershell相當于bat+vbs。既有命令行和管道,又有面向對象。并極大增強了命令。相當于linux中的bash+python。
面向對象比字符串增加了屬性和方法。 返回的屬性,比字符串粒度更小,更嚴禁細致。讓你寫腳本不用扣字符串。 方法讓你不用編程,就有相關功能。
?
?
問:能否介紹下windows命令行的歷史?
答: win2000時代:基本上只有圖形功能,而對應的命令缺失。
win2003時代:圖形功能,基本都有對應的命令。但只限于win。
win2008時代:除了win之外的微軟軟件中。圖形功能,而對應的命令基本全了。但還都是面向字符串的。
win2012時代:重新造所有輪,用所有powershell命令代替所有字符串命令。使windows命令行全面進化到【面向對象】階段。
?
winxp:cmd命令行。
win7:基本powershell。
win8.1:全面【面向對象】。
win10:更全面,連剪貼板都面向對象了!
?
?
?
問:powershell的缺點是什么?
答: 依賴高版本windows。
?
?
問:兼容老版CMD?
答:
1 語法不兼容cmd和bat。powershell語法更佳。
2 所有外部命令都兼容。比如ping.exe等。
?
?
問:powershell源碼的字體和配色,看起來有點矮丑挫,咋辦?
答:用powershell ise 高大上 【字體 + 配色文件】。? ?http://www.cnblogs.com/piapia/p/3987305.html
?
?
問:powershell比CMD(bat)強在哪?
答:
1 語法方面。語法簡單。有函數,功能強大。
2 有正則,有查找,替換,切割,有大字符串對象,更適合于處理字符串。
3 有多線程并發,多進程并發。有計時器。有圖形界面。
?
?
問:powershell比python如何?
答:
1 python可以跨平臺,powershell暫時不能,這是缺點。
2 powershell為win峰。win本地深耕比python深。而python有些獨有的linux功能powershell沒有。
2.1 有管理dns服務器,dhcp服務器,打印機,網卡,域服務器,exchange服務器管理命令。這些python不行。
2.2 .net內置圖形界面【System.Windows.Forms】powershell開發圖形界面比python容易。
3 手冊中文,開發工具中文,調試功能佳。不容易亂碼等。 ?
?
?
問:powershell比linux bash如何?
答:
1 bash中沒有屬性方法,python中沒有管道命令行。假如python帶有命令行管道,bash跪不?
2 bash中有多線程,計時器,圖形界面?
?
?
問:我聽說linux命令比win多,更全,對么?
答:
win中命令更多,更全面,linux不行。
1 powershell命令比linux多得多。
2 linux軟件中,很多命令缺失。不能【修改軟件運行時的配置】。
2.1 上述exchange服務器,命令手冊在:??? https://technet.microsoft.com/zh-cn/library/bb124413.aspx??? 500多條命令,哪個linux郵件服務器能比?
2.2 給bind服務器中的一個dns域中的一個域名,添加一個ip。如何用命令實現?
3 linux軟件依賴配置文件,但是有些命令只能【修改軟件運行時的配置】。而沒有【導出單個配置到文件】,【導出所有配置到文件】的功能。
3.1 win2012中的iis管理命令中有Backup-WebConfiguration,Clear-WebConfiguration,Get-WebConfiguration,Restore-WebConfiguration。這些命令 今年出的nginx中有對應的命令么?
?
?
問:powershell能管理linux么?
答: 可以的。
powershell的做法是外部合作,而不是內部取代bash。
1 通過【powershell dsc】或【powershell + sftp客戶端】來推拉配置文件。
2 通過【ssh客戶端模塊】,模擬linux終端。遠程調用linux內置的bash,python等,返回結果。
?
?
問:我只有winxp,2001年出的,沒裝powershell,沒有curl,就沒法用powershell了吧?
答: 可以的。
還是用外部合作的辦法。通過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" ) 之類的命令即可。
?
問:powershell的強項優勢是什么?
答:
1 .net在win中的性能【應該最佳】,強于java和python。用同樣語句,用同樣對象的powershell腳本,我測了幾個,比py稍 快。(未做定論)個人認為是虛擬機優化的最好的原因。
2 開發winform,wpf圖形界面。或者即是命令行,又是圖形程序。(類似于ghost.exe)
3 powershell多線程可以用多核。
4 win系統管理最強,絕大數微軟軟件。
5 管理vmware,微軟云,亞馬遜云,和云中的虛擬機。
?
?
問:將來powershell會進入安卓,mac osx么?
答: 不知道。
但powershell會進入物聯網系統。win11 iot?將來樹莓派應該可以用上。
?
?
問:powershell如何迅速入門?
答:
入群學習,免費教。 QQ群號=183173532????????? 名稱=powershell交流群
?
總結:
隨著電飯鍋,電磁爐的普及,煤球爐吃棗藥丸哦。 面向字符的這只腳(本語言)被【面向對象的腳】踩的死死的,終將被淘汰。 這天下將是python和powershell的!你不玩面向對象,都不好意思說你是玩腳本的。
?