{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問(wèn)答專(zhuān)欄Q & A COLUMN

PowerShell與Linux Shell有什么不同?

EricEric 回答0 收藏1
問(wèn)題描述:PowerShell與Linux Shell有什么不同
收藏問(wèn)題

2條回答

zero

zero

回答于2022-06-28 12:08

Shell是LINUX系統(tǒng)的用戶(hù)界面,提供了用戶(hù)與內(nèi)核進(jìn)行交互操作的一種接口。它接收用戶(hù)輸入的命令并把它送入內(nèi)核去執(zhí)行。實(shí)際上Shell是一個(gè)命令解釋器,它解釋由用戶(hù)輸入的命令并且把它們送到內(nèi)核。

Windows PowerShell 是WINOWS一種命令行外殼程序和腳本環(huán)境,使命令行用戶(hù)和腳本編寫(xiě)者可以利用 .NET Framework的強(qiáng)大功能。微軟這次沒(méi)有低調(diào),強(qiáng)硬的命名它為PowerShell ,看樣子想在SHELL界面里打敗BASH。

一、理念論

從理念上 ps 比 bash 先進(jìn)一代,ps 有完整的、強(qiáng)類(lèi)型的編程支持,bash 里面全是字符串。Powershell 里面很多的函數(shù)比 UNIX 更加正交,如 % 和 ?,可以提供極其可怕的抽象能力,你 bash 就是做不到。

不過(guò)針對(duì)理念這一說(shuō)法,也有人提:說(shuō)PS的OOP理念比shell純字符串先進(jìn)的同學(xué)請(qǐng)想一想:JavaScript的對(duì)象字面量,是用字符串表示對(duì)象,這樣的一種技術(shù)為什么大受歡迎?答案是從使用者友好的角度看,字符串要優(yōu)于對(duì)象,而命令行恰恰是人機(jī)交互界面,這就是為什么shell比PS易用的原因,至于比較“理念”哪個(gè)先進(jìn),對(duì)于靠代碼吃飯的人來(lái)說(shuō)就是扯淡。

二、用法論

1、bash 快,易用,提示好,難學(xué)。寫(xiě) script,看 script 的時(shí)候你想砸電腦。ps 寫(xiě)的 script 清晰,好讀,有一點(diǎn)編程基礎(chǔ),就算幾乎沒(méi)學(xué)過(guò) powershell 都能猜出來(lái)啥是干嘛的,但是比較慢。。。所以說(shuō)平常交互的話(huà) bash(bash-it, oh-my-git, oh-my-zsh)更好用一些,但是真正寫(xiě)起 script 的時(shí)候感覺(jué)還是 powershell 爽。

2、如果你受夠了bash靠文本解析和環(huán)境變量來(lái)解決邏輯問(wèn)題,你會(huì)無(wú)比渴望一個(gè)OO的Shell。——PS簡(jiǎn)直是大救星。隨著PS用多了,你會(huì)發(fā)現(xiàn),PS的OO有些走火入魔,你又會(huì)開(kāi)始懷念簡(jiǎn)單粗暴的bash。

三、技術(shù)論

這個(gè)不是一兩句話(huà)能說(shuō)清楚的。PS包含了BASH很多命令了,甚至我看有想法把BASH所有的命令都移到WIN下,讓BASH成為它的一個(gè)子集。不過(guò)也有人指出肯定是GNU Bash好呀,畢竟Bash作為大量Linux發(fā)行版默認(rèn)的Shell,久經(jīng)考驗(yàn)。如果兩個(gè)具休技術(shù)細(xì)節(jié)比較的話(huà),需要長(zhǎng)篇大論了。這里有兩者具體的技術(shù)的比較:http://hyperpolyglot.org/shell。

評(píng)論0 贊同0
  •  加載中...
Jeff

Jeff

回答于2022-06-28 12:08

我想題主既然主動(dòng)提問(wèn)這樣的問(wèn)題,想必是不想看充滿(mǎn)技術(shù)細(xì)節(jié)的長(zhǎng)篇大論了,因?yàn)榫W(wǎng)上這樣的內(nèi)容非常多,你使用這個(gè)問(wèn)題直接去搜,就能搜到一大片。

所以我也長(zhǎng)話(huà)短說(shuō),盡量用盡可能少的內(nèi)容直白地講出它們最核心的區(qū)別。

一句話(huà)概括,二者定位不同,Linux Shell 是給用戶(hù)用的,而 PowerShell 是給開(kāi)發(fā)/運(yùn)維工程師用的,當(dāng)然前者是包括后者的。

我們知道,使用 Windows 的話(huà),不會(huì) PowerShell 完全沒(méi)問(wèn)題。但使用 linux 的話(huà),不會(huì) Shell 寸步難行。這既和兩種系統(tǒng)的特性有關(guān),也和 PowerShell 和 Linux Shell 本身有關(guān)。

暫且不提操作系統(tǒng)層面的區(qū)別,只提這兩種語(yǔ)言的區(qū)別。二者的理念是有很大區(qū)別的。

PowerShell 的理念是,你花些時(shí)間和精力把我學(xué)好,那以后可以用我做很多復(fù)雜的事情,這是一個(gè)非常劃算的買(mǎi)賣(mài)(雖然實(shí)際未必如此)。所以它的門(mén)檻是有一些高的,但功能更強(qiáng)大一些。

Linux Shell 的理念是,我要盡量簡(jiǎn)單,你不需要花很多精力就可以用我做一些簡(jiǎn)單的事情,但如果想做更多復(fù)雜的事情,那深入學(xué)習(xí)也是免不了的,但最好不要拿我做太復(fù)雜的事情,我會(huì)受不了的。

那么大概就能體會(huì)出二者的核心區(qū)別是什么了。

評(píng)論0 贊同0
  •  加載中...

最新活動(dòng)

您已邀請(qǐng)0人回答 查看邀請(qǐng)

我的邀請(qǐng)列表

  • 擅長(zhǎng)該話(huà)題
  • 回答過(guò)該話(huà)題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說(shuō)句感謝的話(huà)吧!
付費(fèi)偷看金額在0.1-10元之間
<