小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

重逢Windows 從powerShell 開始

 dxw121 2016-09-08

初學(xué)Windows從Linux開始

故事的起點(diǎn)

承認(rèn)自己是不會(huì)使用Windows的,總比打開CMD就兩眼一抹黑或者在聽別人談?wù)揂D的時(shí)候認(rèn)為他們來自于外星強(qiáng),這幾天的感覺,其實(shí)Windows很友好,真的只是我們曾經(jīng)不會(huì)使用她。

故事的起點(diǎn)來自一個(gè)配置任務(wù),實(shí)現(xiàn)微軟文檔中一句話所描述的功能Windows AD DC is a KDC ,也就是微軟的AD域控制器為一種KDC的實(shí)現(xiàn)方式,再進(jìn)行NFS krb5加密實(shí)驗(yàn)。整個(gè)的這個(gè)Case流程大概是這樣的:

被配置的Windows是Windows Server 2012r2,起初可能大家對Windows的想法是GUI上點(diǎn)啊點(diǎn)啊點(diǎn),有可能在CMD中執(zhí)行一個(gè)ipconfig.exe 看一下網(wǎng)絡(luò)信息就可以了,配置的自動(dòng)化實(shí)現(xiàn)基本靠部署配置文件,但這一次我卻發(fā)現(xiàn)了大大的不同,首先是前段時(shí)間大紅大紫的 powerShell 已經(jīng)集成了一個(gè)相對高的穩(wěn)定版本,另一個(gè)是CMD亙古未變且AD的設(shè)置方法與Windows2003的時(shí)候并沒有太多質(zhì)上的不同(對比閱讀文檔發(fā)現(xiàn)的,Server2003那一年還上小學(xué)呢..),但驚喜就出現(xiàn)在了在配置好AD控制器后的一個(gè)選項(xiàng) Start PowerShell with the Module of AD Administration ,之后遍進(jìn)入了一個(gè)柳暗花明的新世界,一個(gè)全新的無比強(qiáng)大的Shell出現(xiàn)在了眼前。

再一次認(rèn)識(shí)Shell

一周的體驗(yàn)下來,真的想說這一次微軟做的太好,如果說powerShell是一次考試的話,那么:

.Net framework ==物理, C#中的面向?qū)ο笫莗owerShell的最終范式, 答題(完成任務(wù))的模塊都源于對.Net的調(diào)用
bash ==數(shù)學(xué), 框架源于Linux Shell, 當(dāng)然也就在集異璧之大成的bash身上 
Windows ==英語, 對本地操作系統(tǒng)中功能模塊的調(diào)用,采用了cmdlet這種已經(jīng)編譯好了的功能單元的形式 
VBScript ==歷史, 胡漢三又回來了,似曾相識(shí), 這一次不再是以basic為基礎(chǔ), 但畢竟是主要源泉之一
 AD ==生物, 研究答題的人的科學(xué), powerShell可以將任何不直觀地GUI配置直觀的轉(zhuǎn)化為命令行

所以,這次考試的特點(diǎn)會(huì)是及格簡單,高分很難。

·有Linux使用經(jīng)驗(yàn),可以快速上手管道和重定向構(gòu)成的過濾傳遞思維;


·有C# /Java編程經(jīng)驗(yàn),可以快速上手面向?qū)ο蟛糠?,將各個(gè)對象的方法組合起來解決問題;


·有Windows AD配置經(jīng)驗(yàn),可以很清楚的理解為什么powerShell會(huì)在對象中包含這樣的方法,以及究竟什么方法是配置的關(guān)鍵;

換言之這就是一鍋超級(jí)亂燉大雜燴,無論你喜歡吃什么菜,總可以找到享受這鍋菜的方法。很贊很贊的可以從管道傳遞對象,很贊很贊的可以進(jìn)行方法繼承,很贊很贊的可以自己封裝對象,可以自己定義方法;最贊的是在面向?qū)ο蟮耐瑫r(shí)利用>|< 可以將其完全線性化,這樣的叫本既強(qiáng)大又易懂,真的可以說把Windows整體提高了一個(gè)境界。

初學(xué)使用Windows從Linux開始

但我仍然發(fā)現(xiàn)這門語言的核心在于>|< 上,無論是對象各異的方法還是圖形化的完全后臺(tái)腳本化,實(shí)質(zhì)上只是把傳遞的物件從Raw String變?yōu)榱藢ο?,而已。對比一下同一個(gè)功能的不同形式:
ps -ef |wc -l >>/processCount #bash
$process =(Get-Process); #powerShell$process.length >>'C:\processCount'

可能乍一看覺得 bash是管道過濾器重定向,典型的線性思維,powerShell很高級(jí)啊,調(diào)用了一個(gè)方法就解決了 但仔細(xì)想想,為何PowerShell要設(shè)計(jì)成面向?qū)ο蟮?,表面上看通過調(diào)用方法加不同的過濾器可以將管道用的更加靈活,但實(shí)質(zhì)上更可能是因?yàn)橄旅娴膬蓚€(gè)原因:

·基于C#可以直接調(diào)用現(xiàn)有的庫,避免了二次設(shè)計(jì),也避免了再造出另一個(gè)平臺(tái):省事


··剛剛被設(shè)計(jì)出來沒有g(shù)rep /awk /sed 這樣的文字流工具支持,更沒有任何的GNU的下到底層的高效工具支持,所以換個(gè)思路,不再組合工具,而是把工具轉(zhuǎn)化成方法集成在對象處理中:孤獨(dú)

就在這樣的條件下誕生了新一代的面向Windows的shell,省事 孤獨(dú),所以最好的切入點(diǎn)是從他的思想和起源開始一點(diǎn)一點(diǎn)剖析他自身的設(shè)計(jì)原理,之后也許會(huì)發(fā)現(xiàn),所謂的引用object.method 是在工具極端有限的情況下模擬GNU toolset的一種折衷的經(jīng)濟(jì)之舉,所以也許從bash ==數(shù)學(xué) 切入正是最好的方向。

在學(xué)習(xí)了一定的powerShell后,對Windows的感覺也不再是那么陌生,思維上更加的向UNIX靠攏,對于表面對象的配置,利用Get-relatedObjectField 的方式就可以直觀的得到他的本質(zhì)配置,學(xué)習(xí)速度也會(huì)突飛能進(jìn),真的開始對配置WIndows有感覺,正因?yàn)檫@一點(diǎn),他從設(shè)計(jì)哲學(xué)上越來越像UNIX了,或許有一天變成了Winix也說不定,所以未雨綢繆吧,好好看看這個(gè)桌面市占率高到恐怖的操作系統(tǒng)如何蛻變的更加強(qiáng)大,更加可以與開源世界融合。

寫在最后

記得有一次聽一個(gè)GIS專業(yè)的女生說,她會(huì)用C /C /C#編程還會(huì)寫Windows'界面程序',這些頭文件 /MFC /類庫API 真的能在大學(xué)三年就掌握。。哇。。然而事情出了轉(zhuǎn)機(jī),出現(xiàn)了可以按C的面向過程有序的按C 的面向?qū)ο笫降目梢哉{(diào)用C#庫的語言平臺(tái),這樣說還可以揉進(jìn)幾種語言,可我們都是初學(xué)者,說“會(huì)”是對自己的一種不負(fù)責(zé)任,我不會(huì),但我在走向會(huì)的過程中,就像算pi,我們都不會(huì)精確的數(shù)值算pi,真的靠公式你學(xué)“會(huì)”了算出的pi,是pi么。


那些年欠盜版Windows的情,可以考慮還在powerShell和AD上,相行莫相忘,且行且珍惜。


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多