Linux的shell和Windows的命令行有什么區(qū)別?
網(wǎng)友解答: 最根本區(qū)別是linux shell是個(gè)linux 操作系統(tǒng)的用戶交互層。而windows下的cmd只是一個(gè)小應(yīng)用。如上圖,shell介于應(yīng)用程序和內(nèi)核之間,所有應(yīng)用程序要和內(nèi)
最根本區(qū)別是linux shell是個(gè)linux 操作系統(tǒng)的用戶交互層。而windows下的cmd只是一個(gè)小應(yīng)用。
如上圖,shell介于應(yīng)用程序和內(nèi)核之間,所有應(yīng)用程序要和內(nèi)核交互都必須通過shell,包括linux的圖形桌面Xwindow。
linux可以沒有圖形界面,cmd只是windos下的終端模擬器不能單獨(dú)存在。linux下不需要圖形桌面就可以做幾乎任何事情,而且比圖形桌面更簡潔高效,配合shell編程實(shí)現(xiàn)自動(dòng)化,比如筆者工作的服務(wù)器都是純命令行,沒有圖形界面。
cmd本身只是個(gè)桌面應(yīng)用,不能獨(dú)立存在。
cmd很蹩腳難用,功能有限,shell功能強(qiáng)大,體驗(yàn)極佳我們上面也說了shell可以干幾乎任何事情,關(guān)于shell的功能不再多說。cmd雖然可以做一些事情結(jié)合bat小腳本做些自動(dòng)配置的事情,但是用起來也雞肋的很。
隨便舉個(gè)例子把,比如要給hosts添加一條規(guī)則做域名的本地解析:
用shell,一句話教本就行 echo "127.0.0.1 www.g.cn“ /etc/hosts 就ok。
用bat做的話類似
attrib -R C:WINDOWSsystem32driversetchosts @echo 127.0.0.1 www.g.cnC:WINDOWSsystem32driversetchosts
微軟在改進(jìn)和努力微軟以dos起家,憑借其方便直觀地窗口操作系統(tǒng)獨(dú)霸了pc市場幾十年,對(duì)于cmd也在努力改善,從win 7開始內(nèi)置了改進(jìn)版本的Powershell,它從自動(dòng)改變窗體大小,到各種功能上,以及編程體驗(yàn)上做了很多工作,比cmd確實(shí)好用了很多了。
但是同專業(yè)的shell比差距還是很大,微軟又在win 10中引入了linux shell。
更多信息,就不在此說了。有關(guān)shell,powershell和cmd的介紹,我會(huì)以文章專題形式做實(shí)例介紹,有興趣可以關(guān)注我,給我留言,蟲蟲會(huì)給你奉上更多精彩內(nèi)容。
網(wǎng)友解答:感謝悟空問答的邀請(qǐng),Linux的shell和windows命令行有什么區(qū)別?
我從以下幾點(diǎn)進(jìn)行分析:
第一、兩種語言運(yùn)行的平臺(tái)不一樣;shell只能運(yùn)行在Linux系統(tǒng)上;cmd只能運(yùn)行在windows系統(tǒng)上面;如果兩個(gè)語言進(jìn)行串了,那么兩個(gè)語言都是不可以運(yùn)行。
第二、兩種語言的語法不同;shell語言有shell語言的語法;cmd有cmd的語言;他兩相差很大,雖然都說語言是共性,但是不同的語言之間還是有差異的。
第三、兩種語言寫作的方式不同;shell在linux系統(tǒng)下寫作,可以更好的測試;而cmd在windows下寫,測試方面。
總之,兩種語言是不同的,要想學(xué)習(xí)好,需要長期的操作,和積累經(jīng)驗(yàn),才可以更好的運(yùn)用語言。
如果你對(duì)學(xué)習(xí)IT方面感興趣,歡迎訂閱我的酷米號(hào)。我會(huì)在這里發(fā)布所有與IT有關(guān)的有趣文章。偶爾也回答有趣的問題,有問題可隨時(shí)在評(píng)論區(qū)回復(fù)和討論,看到即回。
(碼字不易,若文章對(duì)你幫助可點(diǎn)贊支持~)