Linux 從 0 到 1 (五) - 源碼安裝沦泌,Vim 使用

源碼安裝

有些軟件并沒有包含在軟件倉庫中糊昙,那么我們只能手動來安裝了,也就是只能下載軟件的源代碼谢谦,編譯以生成可執(zhí)行文件释牺。

首先嘗試找deb安裝包

首先,我們得聲明:

這一部分涉及到的軟件包安裝等知識點是基于Debian一族的Linux發(fā)行版回挽,包括Ubuntu没咙。

其他不是Debian一族的Linux發(fā)行版,例如Fedora千劈,Redhat祭刚,CentOS,等等队塘。其實安裝軟件的方式大同小異袁梗,就是每個Linux發(fā)行版之間所用的命令不一樣,軟件包的名稱有點區(qū)別罷了憔古。

大部分Ubuntu下的軟件都可以在軟件倉庫中找到遮怜,你只要用apt-get命令就可以安裝它們。但是鸿市,有少部分比較新的或者還在開發(fā)中的或者還不是很有名的軟件锯梁,就沒有被收錄到軟件倉庫中,那你就不能用apt-get來獲取到了焰情。

在這種情況下陌凳,事情會變得復雜一些。在Windows下面内舟,要安裝某個軟件合敦,我們很習慣于先去軟件的官網(wǎng),然后下載.exe結尾的安裝文件验游。

因為Linux存在極為多樣的發(fā)行版(比如Ubuntu充岛,F(xiàn)edora保檐,CentOS,SUSE崔梗,等等)夜只,每個發(fā)行版又有不同版本號。而且又有不同的處理器種類(32位的和64位的CPU蒜魄,ARM架構扔亥,Intel架構,等等)要適配谈为,不像Windows因為是微軟自己定義旅挤,沒有太多變數(shù)。

因此伞鲫,要為每種Linux創(chuàng)建一個安裝文件幾乎成了不可能的事谦铃。

當我們要找的軟件不在Ubuntu的軟件倉庫中時,我們可以試試去軟件的官方網(wǎng)站找后綴是.deb(deb是Debian的縮寫)的安裝包榔昔。.deb的安裝包只能用于Debian一族的操作系統(tǒng),包括Ubuntu瘪菌。而Redhat一族(包括Fedora)用的則是后綴為.rpm(rpm是Redhat Package Manager的縮寫)的安裝包撒会。

有個軟件可以幫忙將rpm安裝包轉(zhuǎn)換為deb安裝包。這個軟件是alien

# alien默認沒有安裝师妙,所以首先要安裝它诵肛。
sudo apt-get install alien
# 將rpm轉(zhuǎn)換為deb,完成后會生成一個同名的xxxx.deb默穴。
sudo alien xxxx.rpm
# 安裝deb安裝包怔檩。注意,用alien轉(zhuǎn)換的deb包并不能保證100%順利安裝蓄诽,所以可以找到deb最好直接用deb薛训。
sudo dpkg -i xxxx.deb

如果你有幸直接在網(wǎng)上找到了軟件的deb安裝包,那么下載下來仑氛,雙擊安裝包(或者用上面的命令行的形式:sudo dpkg -i xxxx.deb)來安裝即可乙埃。

如果安裝過程沒出錯,那很好锯岖。如果有錯誤介袜,一般可能是因為:

也許你下載的deb安裝包不符合你的電腦環(huán)境〕龃担可能位數(shù)搞錯了遇伞,32位和64位有區(qū)別的。

也許你沒有安裝那些依賴軟件捶牢。因為apt-get工具會幫我們自動下載各種依賴軟件鸠珠,所以不需要我們親自動手巍耗。但現(xiàn)在你需要自己動手安裝缺失的依賴軟件,可以根據(jù)提示信息跳芳,缺什么就裝什么芍锦。

編譯安裝

如果你要安裝的軟件既不在軟件倉庫里,你在網(wǎng)上又找不到相應的deb安裝包的話飞盆,你就只能回到“石器時代”娄琉,用編譯源代碼的方式來安裝了。

什么是編譯吓歇?
簡單來說孽水,編譯就是將程序的源代碼轉(zhuǎn)換成可執(zhí)行文件的過程。就好比我們做糕點城看,用到的原料(如雞蛋女气,面粉等)等就是源代碼,而最終制成的蛋糕就是可執(zhí)行文件测柠。在這個比喻中炼鞠,編譯就是制作蛋糕的過程。

大多數(shù)Linux的程序都是開放源碼的轰胁,我們可以比較輕易地獲取它們的源代碼谒主,然后將其編譯成適合我們的電腦和操作系統(tǒng)屬性的可執(zhí)行文件。

編譯安裝軟件的步驟根據(jù)軟件的不同有所區(qū)別赃阀。有些軟件的編譯安裝非常復雜霎肯,可能會讓你抓狂(特別是一些非標準,非主流的軟件)榛斯,需要很多準備工作观游。

不過一般安裝手冊(一般是下載下來源代碼時附帶的README文本文件,read是英語“閱讀”的意思驮俗,me是英語“我”的賓語形式懂缕。所以read me就是“閱讀我”的意思)都會說明詳細的安裝步驟。

在編譯之前意述,你需要安裝編譯的工具提佣。在Ubuntu下有一個方法可以一次性安裝跟編譯有關的工具,就是build-essential(build是“構建”或“編譯”的意思荤崇,essential是“必要的”的意思拌屏,顧名思義就是“進行構建/編譯所需的必要工具”),運行如下命令安裝:

sudo apt-get install build-essential

安裝完編譯需要的基本工具术荤,我們就可以開工了倚喂。

我們就用一個小軟件作為例子來講解吧。這個軟件是htop。之前我們學過top命令端圈,它可以查看電腦中運行的各種進程狀態(tài)焦读,占用多少內(nèi)存,cpu用量等等舱权,有點類似Windows中的任務管理器矗晃。htop就是類似于top的一個小軟件。

雖然htop這個軟件從apt-get中也可以安裝宴倍。但是我們?yōu)榱搜菔揪幾g安裝的過程张症,就拿它來“開刀”啦

第一步去軟件的官網(wǎng):http://hisham.hm/htop/
下載以下文件

htop-1.0.3.tar.gz

解壓

tar zxvf htop-1.0.3.tar.gz

然后進入目錄中:

cd htop-1.0.3

我們運行它:

./configure

configure這個程序會分析你的電腦,確認是否編譯所必須的所有工具都安裝了鸵贬。它的執(zhí)行需要些時間俗他,因為要做不少檢測。

然后我們就可以開始編譯了阔逼。用make命令:

make

也沒錯誤兆衅,編譯完成。

最后一步用make install命令來安裝 (需要加上sudo以用root權限來安裝軟件):

sudo make install

沒有問題嗜浮。安裝完成羡亩。

Vim

三種模式理解 Vim:

  1. 交互模式:Interactif Mode。也有稱之為命令模式(Command mode)的危融。這是Vim的默認模式夕春,每次我們運行Vim程序的時候,就會進入這個模式专挪。在這個模式中,你不能輸入文本(是的片排,我知道寨腔,這有點不符合文本編輯器的“一貫作風”)。因此率寡,別亂按鍵盤上的字母迫卢,你也許會把情況搞得一團糟。交互模式是很強大的冶共,它可以讓我們在文本間移動乾蛤,刪除一行文本,復制粘貼文本捅僵,跳轉(zhuǎn)到指定行家卖,撤銷操作,等等庙楚。你在鍵盤上按鍵也許會觸發(fā)特定操作(按下u這個字母鍵上荡,就是撤銷最近的一次操作。因為u是undo的首字母馒闷,是英語“撤銷”的意思)酪捡。

  2. 插入模式:Insert Mode叁征。這就是我們熟悉的文本編輯器的“一貫作風”。我們輸入文本逛薇,文本就被插入到光標所在之處捺疼。為了進入這個模式,有幾種方法永罚,最常用的的方法是按字母鍵i(i是insert的首字母啤呼,是英語“插入”的意思)。為了退出這種模式尤蛮,只需要按下Esc鍵(一般在鍵盤左上角)捍壤。Esc是escape的縮寫锉走,是英語“脫離,逃脫”的意思。

  3. 命令模式:Command Mode淑廊。也有稱之為底線命令模式(Last line mode)的。這個模式下收班,我們可以運行一些命令故痊,例如“退出”,“保存”看靠,等等赶促。也可以用這個模式來激活一些Vim的配置(例如語法高亮,顯示行號挟炬,等等)鸥滨。甚至我們還可以發(fā)送一些命令給終端命令行,例如 ls谤祖,locate婿滓,cp,等等粥喜。為了進入這個模式凸主,需要首先處于交互模式(Interactif Mode)下,然后按下冒號鍵(在一般的鍵盤上是要按下Shift鍵+分號鍵)额湘。輸入命令后卿吐,再按回車,就會執(zhí)行此命令锋华。執(zhí)行命令后嗡官,就又回到交互模式了。

基本操作

移動 :h, j, k, l (上下左右移動)

按鍵 作用
h 向左移動一個字符
j 向下移動一個字符
k 向上移動一個字符
l 向右移動一個字符
0和$ :移動到行首和行末
w :一個單詞一個單詞地移動
x :刪除字符
d :刪除單詞毯焕,行谨湘,等等
  • dd :刪除行
  • dw :刪除一個單詞
  • d0和d$ :刪除行首或行末
yy :復制行到內(nèi)存中
p :粘貼
r :替換一個字符
u :撤銷操作
g :跳轉(zhuǎn)到指定行
  • 要跳轉(zhuǎn)到最后一行,按下G(大寫的G,Shift+g)
  • 要跳轉(zhuǎn)到第一行紧阔,按下gg(兩次g鍵)
  • 跳轉(zhuǎn)到指定行:行號+G 或 行號+gg
/ :從光標處開始查找
? :從文件最開始處查找
:r :合并文件
:! :運行外部命令
:s 查找并替換
  • :s/舊字符串/新字符串 :替換光標所在行的第一個匹配的字符串

  • :s/舊字符串/新字符串/g :替換光標所在行的所有匹配的字符串

  • :#,#s/舊字符串/新字符串/g :替換文件中第#行到第#行的所有匹配的字符串

  • :%s/舊字符串/新字符串/g :替換文件中所有匹配的字符串(應該是最常用的吧)

分屏
  • :sp :橫向分屏
  • :vsp :垂直分屏
分屏模式下的主要快捷鍵
  • Ctrl + w 然后再按 Ctrl + w :從一個viewport移動光標到另一個viewport坊罢。

  • Ctrl + w 然后按j :移動光標到下方的viewport。如果是h擅耽,k活孩,l,那么是分別對應移動到如下表所示的viewport:

按鍵 作用
Ctrl + w 然后按h 移動光標到左邊的viewport
Ctrl + w 然后按j 移動光標到下邊的viewport
Ctrl + w 然后按k 移動光標到上邊的viewport
Ctrl + w 然后按l 移動光標到右邊的viewport
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末乖仇,一起剝皮案震驚了整個濱河市憾儒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌乃沙,老刑警劉巖起趾,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異警儒,居然都是意外死亡训裆,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門蜀铲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來边琉,“玉大人,你說我怎么就攤上這事记劝”湟蹋” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵厌丑,是天一觀的道長定欧。 經(jīng)常有香客問我,道長怒竿,這世上最難降的妖魔是什么忧额? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮愧口,結果婚禮上,老公的妹妹穿的比我還像新娘类茂。我一直安慰自己耍属,他們只是感情好,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布巩检。 她就那樣靜靜地躺著厚骗,像睡著了一般。 火紅的嫁衣襯著肌膚如雪兢哭。 梳的紋絲不亂的頭發(fā)上领舰,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天,我揣著相機與錄音,去河邊找鬼冲秽。 笑死舍咖,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的锉桑。 我是一名探鬼主播排霉,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼民轴!你這毒婦竟也來了攻柠?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤后裸,失蹤者是張志新(化名)和其女友劉穎瑰钮,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體微驶,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡浪谴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了祈搜。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片较店。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖容燕,靈堂內(nèi)的尸體忽然破棺而出梁呈,到底是詐尸還是另有隱情,我是刑警寧澤蘸秘,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布官卡,位于F島的核電站,受9級特大地震影響醋虏,放射性物質(zhì)發(fā)生泄漏寻咒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一颈嚼、第九天 我趴在偏房一處隱蔽的房頂上張望毛秘。 院中可真熱鬧,春花似錦阻课、人聲如沸叫挟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽抹恳。三九已至,卻和暖如春署驻,著一層夾襖步出監(jiān)牢的瞬間奋献,已是汗流浹背健霹。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留瓶蚂,地道東北人糖埋。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像扬跋,于是被迫代替她去往敵國和親阶捆。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容