Windows Server 2012:讀者眼中的PowerShell(二)
上一篇Windows Server 2012:讀者眼中的PowerShell(一)中對(duì)PowerShell的討論頗多,本文繼續(xù)上篇的話題,這場(chǎng)對(duì)話可謂激情四射,銅牌用戶eulampios希望一試身手,并開(kāi)始與某位匿名用戶展開(kāi)討論。此次討論迅速升級(jí)為純技術(shù)議題,awk與bash的優(yōu)勢(shì)也作為參照物被牽扯進(jìn)來(lái)。
開(kāi)端:
shell是一種旨在將各類(lèi)程序契合在一起的接口。它的作用是為用戶與程序提供一種方便、簡(jiǎn)單且無(wú)縫的交互方式。
誠(chéng)然,bash能夠在無(wú)需借助util的前提下實(shí)現(xiàn)大量功能,但它的運(yùn)行速度較慢、在很多方面也顯得過(guò)于薄弱(perl 5在運(yùn)行速度上百倍于bash)。然而我們卻偏向于使用bash,而不是接近***的util。
posix shell與posix util的強(qiáng)大之處在一起這是一套獨(dú)立、簡(jiǎn)單且極為高效的util環(huán)境,應(yīng)用能夠在其中隨意與其它應(yīng)用及shell進(jìn)行溝通,進(jìn)而實(shí)現(xiàn)KISS(即簡(jiǎn)單、傻瓜)原則。這種組合中的獨(dú)立元素往往小巧而且簡(jiǎn)單。同樣,emacs是一種獨(dú)立合并shell與util的集合,并且賦予這一集合獨(dú)特的能力。有鑒于此,emacs在由shell命令構(gòu)成的dired、grep、tramp及calc等復(fù)合式模式中表現(xiàn)突出。
不過(guò)PS在附加組件方面更臃腫也更難以劃分,就我看來(lái)創(chuàng)建一套復(fù)雜笨重的怪物機(jī)制與創(chuàng)建shell并不是一回事。
匿名用戶則回復(fù)道:
ls能夠顯示文件與目錄。它也有多種選項(xiàng)用于控制輸出格式以及類(lèi)型排序。因此ls所針對(duì)的并不是“單一任務(wù)”——它針對(duì)的是其它命令也能實(shí)現(xiàn)的多項(xiàng)任務(wù)。這種設(shè)定顯然有悖unix的一貫風(fēng)格。
find也能用于顯示文件與目錄。它也具備多種選項(xiàng)用于控制輸出格式,甚至能通過(guò)選項(xiàng)實(shí)現(xiàn)*執(zhí)行其它進(jìn)程*。這是什么情況?為什么find功能還要執(zhí)行其它進(jìn)程?我們都知道Unix講究的就是“只做一件事,并把它做好”,而以上設(shè)定根本不符合其基本思路。
ps用于發(fā)現(xiàn)進(jìn)程。它擁有很多很多相關(guān)選項(xiàng),旨在控制過(guò)濾機(jī)制、輸出格式以及排序。為什么要在選項(xiàng)中包含這么多其它功能,而不是僅僅專(zhuān)注于命令本身要執(zhí)行的任務(wù)?這也跟unix風(fēng)格不相符,對(duì)吧?
再來(lái)看PowerShell。ls是Get-ChildItem的別稱——其作用只有一個(gè):顯示文件與目錄。與*nix相比它幾乎沒(méi)有什么附加選項(xiàng)——因?yàn)樗静粫?huì)涉及輸出格式或者排序等事務(wù)。它也不需要具備龐大的過(guò)濾機(jī)制,因?yàn)樗谐龅膶?duì)象幾乎包含所有我們打算過(guò)濾的屬性。
因此哪種shell在設(shè)計(jì)上更偏向于功能單一且追求***效果?我們看看操作命令。PowerShell中的一條命令只會(huì)處理一項(xiàng)工作,而不像*nix命令那樣把所有功能都強(qiáng)塞進(jìn)來(lái)。我們還可以通過(guò)簡(jiǎn)單的方式將多種PowerShell命令結(jié)合起來(lái)以實(shí)現(xiàn)*nix shell無(wú)法完成的效果。
在一陣你來(lái)我往之后,KingZongo顯然感到胸悶氣短,于是總結(jié)出以下反對(duì)意見(jiàn):
Windows Server曾經(jīng)是徹頭徹尾的廢品?,F(xiàn)在情況發(fā)生了轉(zhuǎn)變,但我們也不能說(shuō)它已經(jīng)趨于***。
Linux曾經(jīng)是徹頭徹尾的廢品?,F(xiàn)在情況發(fā)生了轉(zhuǎn)變,但我們也不能說(shuō)它已經(jīng)趨于***。對(duì)于任何大家能想到的任務(wù),我們都會(huì)發(fā)現(xiàn)Windows可以通過(guò)比Linux更科學(xué)的方式完成??偠灾琇inux取得了進(jìn)步、不再一無(wú)是處,但也僅此而已。
這樣的論斷當(dāng)然不足以平息此次紛爭(zhēng),但我們?nèi)匀粵Q定將它列舉出來(lái)?,F(xiàn)在暫時(shí)不談PowerShell,再來(lái)看看一個(gè)飽受爭(zhēng)議的話題:對(duì)于開(kāi)發(fā)者社區(qū)而言,為微軟平臺(tái)開(kāi)發(fā)應(yīng)用到底明不明智?一位匿名用戶認(rèn)為微軟的產(chǎn)品已經(jīng)“對(duì)VMware構(gòu)成了嚴(yán)重威脅”,但死硬派軟黑用戶Eadon則如是說(shuō):
供應(yīng)商在為Windows編寫(xiě)了一段時(shí)間應(yīng)用程序之后,卻突然發(fā)現(xiàn)微軟成了自己的競(jìng)爭(zhēng)對(duì)手,這種現(xiàn)象難道還不夠詭異么?可以說(shuō)為Windows編寫(xiě)應(yīng)用就等于是在給自己構(gòu)筑潛在風(fēng)險(xiǎn)。只要開(kāi)發(fā)者賺到錢(qián),微軟就會(huì)很快發(fā)布自家版本,并試圖把我們辛苦創(chuàng)建起來(lái)的市場(chǎng)一股腦偷走。
匿名用戶則回復(fù)稱:
Hyper-v與VMware的競(jìng)爭(zhēng)主要表現(xiàn)在管理程序與裸機(jī)層面。盡管還處于工作站虛擬化階段,但二者在市場(chǎng)上都早已不是什么新人了。
你的意思是說(shuō)操作系統(tǒng)制造商不應(yīng)該為自己的系統(tǒng)開(kāi)發(fā)應(yīng)用嗎?這就像在說(shuō)因?yàn)镮BM推出了z/OS,所以他們就不應(yīng)該再開(kāi)發(fā)DB/2了,因?yàn)榧坠俏脑谒麄冎奥氏乳_(kāi)發(fā)出大型機(jī)關(guān)系類(lèi)數(shù)據(jù)庫(kù)。
與此同時(shí),金牌用戶JDX認(rèn)為這就是“資本主義的本質(zhì)”,并指出:“當(dāng)企業(yè)試圖阻止他人跟風(fēng)推出同類(lèi)產(chǎn)品時(shí),你又會(huì)抱怨‘愚蠢的軟件專(zhuān)利扼殺了自由競(jìng)爭(zhēng)’。微軟沒(méi)問(wèn)題,你的心態(tài)才有問(wèn)題。”
Jean Luc也加入戰(zhàn)團(tuán),以Armstrong Defence的演變?yōu)槔茖?dǎo)這一話題:
好吧,我也說(shuō)幾句?,F(xiàn)在大家爭(zhēng)論的是老牌操作系統(tǒng)廠商昧著良心為自己的系統(tǒng)開(kāi)發(fā)應(yīng)用——震驚,我對(duì)這種論調(diào)表示強(qiáng)烈震驚。首先,如果這都能算是錯(cuò)誤的話,那業(yè)界還有哪家公司算是楷模?
蘋(píng)果?他們可是非常樂(lè)于開(kāi)發(fā)iOS應(yīng)用,并公開(kāi)與其它開(kāi)發(fā)者展開(kāi)競(jìng)爭(zhēng)。這種情況過(guò)去發(fā)生過(guò),未來(lái)還將繼續(xù)出現(xiàn)。
Linux?我就只能呵呵了。比如說(shuō)我們是一家針對(duì)廣泛的潛在用戶群體開(kāi)發(fā)軟件產(chǎn)品的供應(yīng)商,一套方案出臺(tái)之后相信用不了多久就會(huì)有GPL支持下的同類(lèi)產(chǎn)品面市。這里我并不是要批評(píng)Linux,只是想提醒各位,其實(shí)用戶本身也希望事情照此發(fā)展。
其次,大家真的是站在用戶角度希望通過(guò)付費(fèi)插件的方式實(shí)現(xiàn)基本操作系統(tǒng)功能?就像PDF查看工具、調(diào)度程序、CD記錄工具以及DVD播放器那些?過(guò)去這些東西都不屬于Windows系統(tǒng),但現(xiàn)在已經(jīng)成為必不可少的組成部分了。
沒(méi)錯(cuò),在Windows系統(tǒng)平臺(tái)上開(kāi)發(fā)應(yīng)用會(huì)給自己帶來(lái)風(fēng)險(xiǎn),但這種風(fēng)險(xiǎn)在其它系統(tǒng)平臺(tái)上同樣普遍存在。微軟在歷史上曾經(jīng)多次坑過(guò)自己的合作伙伴,但這也只是IT競(jìng)爭(zhēng)中的常見(jiàn)狀況,如果認(rèn)不清這一點(diǎn),恐怕只能說(shuō)你太過(guò)天真了。
總結(jié):我本人對(duì)微軟沒(méi)什么好感,但大家為什么會(huì)認(rèn)為微軟比起其它技術(shù)巨頭更低劣、更卑鄙?
相比之下,The Vociferous Time Waster則對(duì)NFS 4.1的貢獻(xiàn)抱以譏諷:
“它是一款專(zhuān)為異構(gòu)環(huán)境打造的杰出存儲(chǔ)系統(tǒng),同時(shí)也為VMware服務(wù)器提供了理想的網(wǎng)絡(luò)存儲(chǔ)點(diǎn)。”
把Windows Server作為VMware服務(wù)器的后端NAS?哈哈 哈哈 哈哈 哈哈,這恐怕是我聽(tīng)過(guò)的最荒謬的笑話了。
雖然許多用戶都在盡量克制,但技術(shù)討論圈中已經(jīng)出現(xiàn)一種頗為悠久的傳統(tǒng),即任何與Windows有關(guān)的討論都將不可避免地淪為Windows黨與Linux黨之間形式各異的沖突、對(duì)噴甚至是破口大罵。也許我們應(yīng)該為這類(lèi)討論制定一條明確界線——只要任何人提到殺毒軟件或者FOSS(即自由及開(kāi)源軟件)系統(tǒng)所必需的技術(shù)團(tuán)隊(duì)擴(kuò)張,討論就立即結(jié)束。就在這時(shí),首先開(kāi)炮的Eadon再度降臨:
Windows簡(jiǎn)直就是種恥辱,它不具備任何Linux所持有的優(yōu)勢(shì)、居然還好意思跳出來(lái)叫板。Windows根本毫無(wú)競(jìng)爭(zhēng)力,它在服務(wù)器領(lǐng)域就是小孩的玩意——時(shí)刻需要重啟、必須安裝殺毒軟件、缺乏擴(kuò)展性而且在文件及內(nèi)存管理方面也非常差勁。更離譜的是,這種東西居然還要錢(qián)。
Reg網(wǎng)站銅牌用戶GitMeMyShottinIrons則給他施以迎頭痛擊:
你知道我們?yōu)槭裁床粫?huì)在上世紀(jì)九十年代討論NT系統(tǒng)嗎?如果要拿傳統(tǒng)印象來(lái)評(píng)判,那Linux不也有一大堆毛病么。糟糕的驅(qū)動(dòng)程序支持、一丁點(diǎn)微小的問(wèn)題都需要對(duì)操作系統(tǒng)本身進(jìn)行重新編譯,但那都已經(jīng)是歷史了,就像你說(shuō)的那些Windows缺陷一樣。
至于你說(shuō)的殺毒軟件,如果敢在任何一臺(tái)文件服務(wù)器的操作系統(tǒng)中“裸奔”,那你的下場(chǎng)絕對(duì)可想而知(還會(huì)感染客戶機(jī)哦)。
銅牌用戶Stevie顯然受夠了這一切,他表示:
這些反Windows人士發(fā)出的厥詞只會(huì)令我對(duì)你的使用經(jīng)驗(yàn)產(chǎn)生懷疑。你到底有多少年沒(méi)碰過(guò)甚至沒(méi)正眼看過(guò)Windows系統(tǒng)了?我想說(shuō)的是,如果我僅僅通過(guò)紅帽發(fā)行版4.2的惡劣體驗(yàn)就對(duì)整個(gè)Linux陣營(yíng)指手劃腳,恐怕你也會(huì)對(duì)我展開(kāi)口誅筆伐吧。
針對(duì)這一點(diǎn),JaimieV 回復(fù)道:
我也有同感——相信每一位用過(guò)紅帽4.2的朋友都會(huì)想借酒澆愁、希望永遠(yuǎn)忘掉那段噩夢(mèng)般的經(jīng)歷。
話題就此被終結(jié),很公道、也很容易理解。
【編輯推薦】
- Windows Server 2012服務(wù)器管理器詳解
- 如何設(shè)置Windows Server 2012 NTFS權(quán)限?
- 不容忽視的Windows Server 2012
- Windows Server 2012 Hyper-V群集技術(shù)分享
- Windows Server 2012:讀者眼中的PowerShell(一)
【責(zé)任編輯:黃丹 TEL:(010)68476606】