Linux是一套自由加開放源代碼的類Unix操作系統(tǒng),誕生于1991年10月5日(第一次正式向外公布),由芬蘭學生Linus Torvalds和后來陸續(xù)加入的眾多愛好者共同開發(fā)完成。相比于windows,開源,是他獨有的特點,這個特點使得它給了你更多的權(quán)限,實現(xiàn)在Windows上不能實現(xiàn)的事。當然學習Linux,對你進入IT這份行業(yè),有舉足輕重的作用。
如何學會Linux呢?對于很多人,又是一個頭疼的問題。畢竟,我們又不是計算機專業(yè)出生的,對于計算機之一行業(yè)的基礎(chǔ)知識,懂得少之又少。當你看到這,第一眼感覺肯定是崩潰的,當然不乏也有神人存在,但那畢竟是少數(shù)人,所以,一個好的學習方法變得尤為重要。
一、選擇一個比較合適的Linux發(fā)行版。
Linux發(fā)行版有很多種,這些有的是為專門的商業(yè)供應(yīng),也有的是為個人用戶所使用,
Fedora是基于RHEL,CentOS,Scientific Linux, 和Oracle Linux的社區(qū)版本。相比RHEL,F(xiàn)edora打包了顯著的更多的軟件包。其中一個原因是,多樣化的社區(qū)參與Fedora的建設(shè);它不只是一家公司。SUSE,? SUSE Linux Enterprise Server (SLES), 和openSUSE 之間的關(guān)系類似于 Fedora, Red Hat Enterprise Linux, 和CentOS的關(guān)系。Debian是包括Ubuntu在內(nèi)許多發(fā)行版的上游,而Ubuntu又是Linux Mint及其他發(fā)行版的上游。Debian在服務(wù)器和桌面電腦領(lǐng)域都有著廣泛的應(yīng)用。Debian是一個純開源計劃并著重在一個關(guān)鍵點上,穩(wěn)定性。它同時也提供了最大的和完整的軟件倉庫給用戶。個人建議你學習redhat,因為Redhat靠譜,內(nèi)核也比較穩(wěn)定,建議你看一下《Linux就該這么學》,就是基于Redhat講的。
二、學會一些基礎(chǔ)的命令。
Unix & Linux 命令行特別之處在于,一些選項的設(shè)計是遵循傳統(tǒng)的, 只需認識一個就能在其它命令使用相似的功能。選項通常都是相關(guān)功能的英文縮寫,并非毫無意義的英文字。你除了需要掌握一些基本的命令。像ls cd cat more mkdir rmdir vi rm tail ./ or sh這些。后面參數(shù)也得看會。
1. -h 通常意指 ‘h’ + uman, 也就是 human-readable, 代表者有: ls -lth, sort -h2. -v (小寫) 通常意指 ‘v’ erbose, 代表者有: curl -v, ssh -v, python -v
2.1 -V (大寫) 通常意指 ‘V’ ersion,與 –version 相比之下比較冷門,代表者有: gedit -V, firefox -V, openvt -V
2.2 –version (小寫 v) 也是意指 ‘V’ ersion,代表者是九成的命令: python –version, konsole –version, gnome-shell –version, firefox –version, chromium-browser –version, bash –version, curl –version, tree –version, ls –version, journalctl –version, gedit –version, unp –version
2.3 –help, 同上, 九成的命令都有。不推薦 -h, 很多命令沒有 -h, 亦或已經(jīng)用來代表? ‘h’uman-readable。
三、掌握一些操作系統(tǒng)的基礎(chǔ)感念。
對于一個高級的程序員,他們能利用好操作系統(tǒng)留下的接口去進行深層次編程,比如說多線程編程,就是利用CPU的資源實現(xiàn)相關(guān)程序,然而作為一個比較合格的程序員,這些,你是必須掌握的。像什么進程間通信,文件操作,多線程編程,sock編程,之類,必須熟練掌握,這樣才能進行下面的操作,學習一些大數(shù)據(jù),UI開發(fā)之類,然而,你會發(fā)現(xiàn)學完這個后,自己學習新東西,更容易上手。
四、學會代碼規(guī)范,分布式管理代碼的git服務(wù)。
一個合格的IT行業(yè)人員,對于他們的編碼,一定是非常有條理的,這樣不光整潔,比較好維護,要知道一個項目的代碼,是有上萬行以上的,如果不調(diào)理,那怎么后期維護之類。還有一點,要學會代碼管理,git是一個好的工具,能讓你快速的實現(xiàn)代碼管理。望我們一同努力~發(fā)揚開源精神~