{eval=Array;=+count(Array);}
依稀記得我上大學(xué)的時(shí)候,在Linux第一堂課上,老師進(jìn)門(mén)的第一句話就是,想學(xué)好Linux,先在自己的電腦上安裝一個(gè)Linux系統(tǒng),然后多敲,多練,多想。現(xiàn)在想想,如果進(jìn)入Linux的世界話,的確對(duì)初學(xué)者的要求就是多練,多敲,它能幫助初學(xué)者掌握大部分的基礎(chǔ)命令。但是Linux中有太多的命令了,即使Linux大神,也不一定全部都會(huì),所以我們需要掌握的是那些基礎(chǔ)命令,這個(gè)沒(méi)有別的辦法,只有多敲,多練才能掌握。
頭開(kāi)始的時(shí)候,可能會(huì)有點(diǎn)枯燥,但是當(dāng)你敲了幾天后,你就會(huì)覺(jué)得用命令來(lái)控制你的電腦比圖形化界面的電腦爽太多了。慢慢的就會(huì)感受其中的樂(lè)趣。
當(dāng)你基礎(chǔ)命令都玩會(huì)了后,我們就需要掌握一些,進(jìn)程,服務(wù),管道,磁盤(pán)等的命令。然后在你的電腦上安裝一些開(kāi)發(fā)用到的軟件。MySQL數(shù)據(jù)庫(kù),tomcat服務(wù)器,Nginx反向代理,Redis緩存等。
隨著你知識(shí)的晉升,你會(huì)覺(jué)得安裝服務(wù)太麻煩了。這個(gè)時(shí)候就開(kāi)始研究Shell腳本,學(xué)習(xí)Shell語(yǔ)法,if語(yǔ)句,for循環(huán),while循環(huán),case語(yǔ)句,然后自己寫(xiě)一個(gè)強(qiáng)大的安裝腳本。
其實(shí)我們學(xué)習(xí)Linux的時(shí)候,不能照著文檔去敲,要知道其中是什么意思,掌握其中的原理。我們安裝軟件的時(shí)候不能光安裝網(wǎng)上的教程一步一步的去這樣做。當(dāng)然我們剛開(kāi)始的時(shí)候,可能不熟練,這樣沒(méi)有問(wèn)題,但是到后面,我們要知道每一步是什么意思,服務(wù)與服務(wù)之間是什么原理,要完全的掌握他。要牢牢的記住。不能你在敲的時(shí)候,還要拿著文檔,那樣很不方便,別人也會(huì)認(rèn)為你不專業(yè)。
所以,在我們剛開(kāi)始學(xué)習(xí)Linux的時(shí)候,要多敲多練,去掌握這些命令。到后面的時(shí)候,我們就要多想了。想想服務(wù)與服務(wù)之間的原理。
首先,不停的敲命令,時(shí)間久了,熟能生巧,自然而然就記住了,不過(guò)凡事過(guò)猶不及,需要把握一個(gè)度,比如每天敲一會(huì),有印象就可以;其次,還要考慮從事的職業(yè),linux中有很多的命令,比如說(shuō)做嵌入式Linux開(kāi)發(fā)的和做linux運(yùn)維開(kāi)發(fā)的,對(duì)某些Linux命令的使用是不一樣的,要找準(zhǔn)自己從事職業(yè)常用的linux命令。最后我寫(xiě)了幾篇嵌入式開(kāi)發(fā)中常用的linux命令,可以看看。
感謝評(píng)論,轉(zhuǎn)發(fā)。更多精彩內(nèi)容可關(guān)注本我們:嵌入式軟硬件開(kāi)發(fā)。感謝大家。相互交流,共同進(jìn)步。
真的,很重要!!!
我是從一個(gè)Linux小白開(kāi)始的,最開(kāi)始我找了一個(gè)網(wǎng)絡(luò)Linux命令大全的文章,每天開(kāi)始去背,事實(shí)證明,并沒(méi)有作用。這種狀況一直持續(xù)到我開(kāi)始第一次自己安裝軟件,我是實(shí)實(shí)在在的記住了,記住了他的含義和回復(fù)。
這個(gè)屬于技能,技能是需要我們反復(fù)去操作才能熟練的
加油哦~開(kāi)始你的第一行命令吧
學(xué)習(xí)任何編程知識(shí)都是循序漸進(jìn)的過(guò)程,只靠單方面的練習(xí)很難系統(tǒng)的掌握,學(xué)習(xí)編程是一個(gè)體系工程,劍走偏鋒的做法不一定是最佳的,自學(xué)編程的人一般能堅(jiān)持完前三個(gè)月后邊就有機(jī)會(huì)了,回到題目中有關(guān)linux的學(xué)習(xí)方法,只是會(huì)使用命令行只是一種非常簡(jiǎn)單的操作方式,距離真正掌握l(shuí)inux還有非常遙遠(yuǎn)的距離。學(xué)習(xí)編程首先做好一定的心理準(zhǔn)備,要做好長(zhǎng)期作戰(zhàn)的準(zhǔn)備,一般用兩種人適合學(xué)編程,一種是對(duì)編程特別感興趣;一種是需要編程這份工作,所以在遇到問(wèn)題的時(shí)候也能咬緊牙關(guān)挺過(guò)去。
做好長(zhǎng)期作戰(zhàn)準(zhǔn)備。無(wú)論什么編程語(yǔ)言或者編程類別都需要準(zhǔn)備好耐心,學(xué)習(xí)過(guò)程需要時(shí)間需要讓自己先找到感覺(jué)才能繼續(xù)后面的提升,有些初學(xué)者給自己制定了嚴(yán)密的計(jì)劃,恨不得幾個(gè)月弄完就要去找工作了,學(xué)習(xí)編程沒(méi)有絕對(duì)的時(shí)間限制,如果有天分可能幾個(gè)月的時(shí)間就能很快上道,但對(duì)于一般的人而言需要都需要很長(zhǎng)一段時(shí)間時(shí)間的積累才能真正去找工作。
linux學(xué)習(xí)之前的準(zhǔn)備。由于linux是屬于和windows平級(jí)的一種操作系統(tǒng),首先要在自己電腦上安裝一個(gè)linux系統(tǒng),可以采用兩種方式一種是直接安裝全系統(tǒng)的linux,一種安裝在虛擬機(jī)上。linux上面理論上能開(kāi)發(fā)任何的軟件,但一般來(lái)講嵌入式開(kāi)發(fā)通常使用linux系統(tǒng),要在上面編程首先要掌握一些基本的命令,常見(jiàn)使用的命令差不多有20多種,掌握熟練了基本上就能玩轉(zhuǎn)正常的操作了,linux真正的學(xué)習(xí)其實(shí)主要是操作系統(tǒng)api的學(xué)習(xí),這種不局限于編程語(yǔ)言。
設(shè)定學(xué)習(xí)目標(biāo)。即使剛開(kāi)始學(xué)習(xí)linux也要有目標(biāo)性,編程是一個(gè)邏輯性很強(qiáng)的工作,需要時(shí)時(shí)刻刻設(shè)定目標(biāo)感,有助于培養(yǎng)自己的節(jié)奏感,能夠做到每天都有收獲,每天要完成的任務(wù)當(dāng)天必須搞定,這是自學(xué)編程的方式但最難是的長(zhǎng)期的堅(jiān)持工作。
linux學(xué)習(xí)如果是從很膚淺的角度出發(fā),可以只是簡(jiǎn)單的安裝學(xué)習(xí)下,學(xué)習(xí)下簡(jiǎn)單的命令,學(xué)習(xí)linux簡(jiǎn)單的系統(tǒng)調(diào)用,但要深刻的學(xué)習(xí)就是linux設(shè)備驅(qū)動(dòng)內(nèi)科定制方面的東西了,甚至研究linux內(nèi)核模塊如何工作的,這種屬于玩的比較深刻了,所以如何學(xué)習(xí)linux關(guān)鍵在于你的學(xué)習(xí)決心和野心有多大。
學(xué)習(xí)基本的命令行。命令行的學(xué)習(xí)第一階段需要記憶幾個(gè)常見(jiàn)的命令,然后用命令不停的練習(xí),在練習(xí)的過(guò)程中不斷發(fā)現(xiàn)新的命令,其實(shí)要玩轉(zhuǎn)linux命令最簡(jiǎn)單的方式是把在windows常用的操作翻譯成命令行的方式去執(zhí)行就可以了。遵循這個(gè)規(guī)律就能把常見(jiàn)的命令行搞定,這塊的學(xué)習(xí)沒(méi)有什么捷徑只能死記硬背,這是玩轉(zhuǎn)linux的基本,如果這塊都掌握得費(fèi)勁,建議就不要繼續(xù)向下進(jìn)行了。
學(xué)習(xí)linux操作系統(tǒng)api。在linux編程首先要掌握基本的api,比如常見(jiàn)如何創(chuàng)建線程,如果進(jìn)行網(wǎng)絡(luò)編程,如何加保護(hù)鎖機(jī),如何創(chuàng)新進(jìn)程等等基本概念,如果從事嵌入式開(kāi)發(fā)上述講到的概念都會(huì)用到,一般在嵌入式方面工作,linux基本api是基本功,linux系統(tǒng)現(xiàn)在的使用范圍非常廣泛,已經(jīng)在移動(dòng)端占據(jù)非常大的比例,現(xiàn)在非常流行的安卓系統(tǒng)內(nèi)核就是基于linux上面定制的。
學(xué)習(xí)linux設(shè)備驅(qū)動(dòng)開(kāi)發(fā)。這種一般在學(xué)習(xí)底層開(kāi)發(fā)的時(shí)候用到,不一定適用于每個(gè)人,如果只是想在linux開(kāi)發(fā)別的軟件,這方面就可以不去涉及,如果從知識(shí)體系框架上如果有機(jī)會(huì)還是值得去學(xué)習(xí),本來(lái)編程學(xué)習(xí)就不需要給自己設(shè)定界限,因?yàn)樵谀硞€(gè)領(lǐng)域積累的經(jīng)驗(yàn)在別的地方是可以借鑒使用的。
任何一種技能的學(xué)習(xí)過(guò)程都需要時(shí)間,都需要保持足夠的耐心,而且編程語(yǔ)言之間還是想通的,掌握一種技能之后再去學(xué)習(xí)別的語(yǔ)言都會(huì)變得變得非常流暢,想要學(xué)習(xí)編程首先要準(zhǔn)備好,足夠的耐心和時(shí)間,同時(shí)不斷向自己發(fā)起挑戰(zhàn)挖掘潛力所在,希望能幫到你。
基本功是需要知道常用命令的,可以不用清楚具體參數(shù),但是有一個(gè)功能浮現(xiàn)的時(shí)候應(yīng)該知道有這么一個(gè)命令可以直接使用。這方面就需要長(zhǎng)期使用,或者背誦和記憶,甚至是每天敲命令的。
但是總敲啊敲,也沒(méi)什么用,還是要用起來(lái)。比如bash編程,bash就是不夠靈活而已,不會(huì)用來(lái)寫(xiě)復(fù)雜的邏輯,但依然是可以實(shí)現(xiàn)的,運(yùn)維方面比較常見(jiàn)。比如Java開(kāi)發(fā),可能平時(shí)用ide,或者手動(dòng)"mvn clean package"就可以打包了。但要將服務(wù)部署到線上,就要統(tǒng)一打包,會(huì)做一些額外的工作,看我們目前的打包,其實(shí)就是最基本的命令組合:
這算是最簡(jiǎn)單的用起來(lái)了。
經(jīng)常搗鼓Linux的話,還有很多系統(tǒng)文件,配置文件等,都是需要配置和調(diào)整的,這里面大部分的腳本都是bash腳本,都是非常好的學(xué)習(xí)例子。我用的比較簡(jiǎn)單,主要就是管理線上服務(wù),而且也不專門(mén)做運(yùn)維,不需要學(xué)習(xí)的那么深入,比如awk,sed偶爾用的時(shí)候我還去搜。但是如果想要深入學(xué)的話,就要去看很多例子了,典型的比如nginx,httpd,tomcat等等的相關(guān)腳本。雖然最終都是命令的組合,但是Linux命令組合的能力非常強(qiáng),而且被認(rèn)為是跟內(nèi)核交互的好工具。
所以說(shuō),不停的敲命令是你入門(mén)的第一步,但這一步不需要太久;學(xué)習(xí)典型軟件的服務(wù)管理腳本,才是重要的一步;然后寫(xiě)出自己項(xiàng)目或者服務(wù)器的管理腳本,這才是你知識(shí)變現(xiàn)的最后一步;最后就看自己想要達(dá)到的深度了。
1.一個(gè)東西你用一遍記不住,兩遍記不住,二十遍,五十遍你肯定能記住
2.仔細(xì)想想你是如何把windows用的那么熟練的,因?yàn)槟愠商煊茫傸c(diǎn)啊點(diǎn),如果換成linux命令你總?cè)デ茫?dāng)然會(huì)跟windows一樣熟悉
3.光會(huì)敲命令是沒(méi)用的,一個(gè)命令干了什么,這些命令如何組合,如何搭建一臺(tái)服務(wù)器,如何提高服務(wù)器移性能和安全,都是需要會(huì)的
4.linux最大優(yōu)點(diǎn)就是有強(qiáng)大的命令,去掉圖形界面,減少漏洞和硬件資源占用率。所以命令要比鼠標(biāo)重要。
5.如果你想配置一臺(tái)服務(wù)器的話,無(wú)論什么類型的服務(wù)器,都離不開(kāi)linux命令,使用命令配置
敲命令是為了記住并清楚明了的熟悉了解所使用的工具運(yùn)行的過(guò)程和結(jié)果。敲命令多了以后會(huì)把多個(gè)命令配合一起使用并組織成腳本話,做到某些自動(dòng)化的概念,如果一味的復(fù)制粘貼你會(huì)依賴并習(xí)慣性地這樣工作,在出現(xiàn)某些問(wèn)題的時(shí)候你不能直接用命令得到結(jié)果的是需要先找命令,這大大影響了解決問(wèn)題的關(guān)鍵性。
0
回答0
回答0
回答1
回答2
回答10
回答0
回答0
回答6
回答0
回答