118
看似比較簡單的Linux推坑教學 ---Linux CLI基本教學(vim教學)--- 製作者:lian0123 學歷:南大資工學生 大安高工畢業 本文皆採用維基百科CC3.0授權協定 製作日期:2016/11/26 維護期限:2020/01/01 版本編號0.0.3

看似比較簡單的Linux推坑教學 Linux CLI 基本教學

  • Upload
    -

  • View
    327

  • Download
    7

Embed Size (px)

Citation preview

Page 1: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

看似比較簡單的Linux推坑教學---Linux CLI基本教學(含vim教學)---

製作者:lian0123學歷:南大資工學生   大安高工畢業

本文皆採用維基百科CC3.0授權協定

製作日期:2016/11/26 維護期限:2020/01/01版本編號0.0.3

Page 2: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

本文章授權協定說明

•可重製

•非商業化

•相同方式分享

Page 3: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

前言

•本文獻給剛加入Linux的新手們,所以只寫一般人會用到的部份,所以都時以基本的實務操作為主

•本人的歷鍊還不夠,所以文章有地方錯,歡迎各位大神指出

•本文章皆使用"虛擬終端機"做示範

•警告!這只是操作簡易入門(不具完整性)

Page 4: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

相信大部分的人接觸Linux時

Page 5: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

一定會遇到一個問題

Page 6: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

那就是終端機的操作

Page 7: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

於是今天我們來談點Linux的終端機操作吧!

Page 8: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

Linux基礎指令介紹

Page 9: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

重要的{TAB}鍵

•用途:在輸入指令時,按下TAB鍵能跳出自動提醒或補完指令

•自動提醒:當你輸入的指令有多種可能時,會列出所有可能選項

•補完指令:當你輸入的指令只有一種可能時,會補完你的指令

Page 10: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:man•意思:man page(手冊頁)

•語法:man {指令名稱}

•用途:顯示指令的用途

•補充:當你遇到看不懂的指令時,可以用man來查看用指令用途

Page 11: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:man {指令}(一)

Page 12: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:man {指令}(二)

Page 13: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:ls•意思:list (列表)

•語法:ls -{代碼}

•用途:顯示該資料夾的裡的東西

•補充:代碼用" -a "是指all 顯示全部檔案," -l "是指line 逐行顯示 " -al "則為 顯示全部檔案+逐行顯示

Page 14: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:ls

Page 15: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:ls -a

Page 16: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:ls -al

Page 17: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:mkdir•意思:make directory (新增資料夾)

•語法:mkdir {資料夾名}

•用途:新增資料夾

•補充:無

Page 18: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:mkdir

Page 19: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:rmdir•意思:remove directory (移除資料夾)

•語法:rmdir {資料夾名}

•用途:清除資料夾

•補充:資料夾需為空

Page 20: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:rmdir

Page 21: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:cd•意思:change directory (切換資料夾)

•語法:cd {資料夾位置}

•用途:移動你所在的資料夾位置

•補充:cd 會回到家目錄、cd / 會到根目錄

Page 22: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

補充:Linux檔案系統

•根目錄:Linux系統最上層的目錄,底下有系統重要的資料夾• 位置: /

•家目錄:給使用者的目錄,包含桌面、下載、圖片、音樂等......• 位置:/home/{使用者名稱}/

Page 23: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:cd {資料夾}

Page 24: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:cd /

Page 25: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:回到家目錄

Page 26: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:mv•意思:move(移動檔案)

•語法:mv {原資料夾位置+檔案名} {新資料夾位置+檔案名}

•用途:移動檔案位置,從原資料夾位置移動到新資料夾位置

•補充:若使用者在原資料夾位置執行指令,原資料夾位置可省略

•此外,如果要重新命名檔案時,也可直接用mv 移動+重新命名

Page 27: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:mv {舊位置} {新位置}(一)

Page 28: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:mv {舊位置} {新位置}(二)

Page 29: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:cp•意思:copy (複製檔案)

•語法:copy {原資料夾位置+檔案名} {新資料夾位置+檔案名}

•用途:複製檔案,從原資料夾位置複製到新資料夾位置

•補充:若使用者在原資料夾位置執行指令,原資料夾位置可省略

Page 30: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:cp {舊檔案位置} {新檔案位置}

Page 31: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:rm•意思:remove(移除)

•語法:rm {檔案名}

•用途:移除檔案

•補充:不要亂用,尤其" rm -rf / "這個指令會毀了你的電腦, " r "是指底下所有東西," f "則是指不確認刪除

Page 32: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:亂用 rm -rf / 的下場(一)

Page 33: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:亂用 rm -rf / 的下場(二)

Page 34: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:sudo•意思:super user do(暫時變成超級使用者)

•語法:sudo {檔案名}

•用途:暫時提昇使用者權限到最高使用者權限去執行指令

•補充:需輸入密碼以驗證身分,輸入成功後,會有一段時間可以 不用再次輸入密碼(如果你是root,你就不用sudo了)

Page 35: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:sudo {指令} (一)

Page 36: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:sudo {指令} (二)

Page 37: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:su•意思:super user (切換使用者)

•語法:su {使用者名}

•用途:切換使用者權限

•補充:需輸入密碼以驗證身分,若不加使用者名,即切換到最高 使用者權限(root),不建議使用此方式

Page 38: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:su (一)

Page 39: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:su (二)

Page 40: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:su {使用者名}

Page 41: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:who•意思:who (有誰)

•語法:who

•用途:顯示目前終端機的使用者資訊

•補充:顯示內容包括 登入的使用者、終端機編號、登入時間

Page 42: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:who

Page 43: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:whoami•意思:who am i(我是誰)

•語法:whoami

•用途:顯示目前的使用者

•補充:無

Page 44: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:whoami

Page 45: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:cat•意思:catch(抓)

•語法:cat {檔案名}

•用途:裝取檔案內容

•補充:不能對目錄執行

Page 46: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:cat {檔案名}

Page 47: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:clear•意思:clear(清除)

•語法:clear

•用途:清除終端機上的內容

•補充:實際上是將新的一行滾動到第一列

Page 48: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:clear(一)

Page 49: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:clear(二)

Page 50: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:ping•意思:ping

•語法:ping {IP位置}

•用途:測試網路連線

•補充:建議使用google的 "8.8.8.8" 或 "8.8.4.4"

Page 51: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:ping {IP位址}

Page 52: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:ping {IP位址} "ctrl+c中斷"

Page 53: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:ifconfig•意思:if config (是否連線)

•語法:ifconfig

•用途:顯示電腦有關於網路的詳細資料

•補充:無

Page 54: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:ifconfig

Page 55: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:lshw•意思:list hardwave

•語法:sudo lshw

•用途:偵測電腦硬體資料並顯示

•補充:需 sudo權限,部份系統需先安裝lshw

Page 56: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:sudo lshw

Page 57: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:less•意思:less (較少)

•語法:{指令} |less

•用途:將指令的結果輸出成可控制觀看,而非一般的終端機鏡射

•補充:執行時按下q就可以離開那模式

Page 58: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:less

Page 59: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:less

Page 60: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:screenfetch•意思:screen fetch(螢幕 取得)

•語法:screenfetch

•用途:顯示系統相關資訊

•補充:需要先安裝screenfetch

Page 61: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:screenfetch

Page 62: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:exit•意思:exit(離開)

•語法:exit

•用途:離開虛擬終端機(關閉虛擬終端機視窗)

•補充:實體終端機,則是登出帳號

Page 63: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:exit (一)

Page 64: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:exit (二)

•模擬終端機已關閉(所以沒截圖)

Page 65: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

安裝軟體

Page 66: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

各主流發行版的安裝軟體指令

•Debian/Ubuntu體系• sudo apt-get install {軟體名}

•Arch體系• sudo pacman -S {軟體名}

•Ret Hat 體系• sudo yum install {軟體名}

Page 67: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範(以APT安裝):

Page 68: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範(以APT安裝):

Page 69: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

各主流發行版的移除軟體指令

•Debian/Ubuntu體系• sudo apt-get remove {軟體名}

•Arch體系• sudo pacman -R {軟體名}

•Ret Hat 體系• sudo yum remove {軟體名}

Page 70: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範(以APT移除):

Page 71: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範(以APT移除):

Page 72: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

Linux 終端機上的純文字編輯器

Page 73: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

也許滿多人看到我之前的文章使用一個叫vim的純文字編輯器

Page 74: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

我們也順便來介紹終端機上的純文字編輯器世界

Page 75: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

為什麼要用終端機上的純文字編輯器?

•方便:• 萬物皆檔案,基本上,你只要呼叫就能使用

•工作需求:• 伺服器上,你可以不用安裝X-window顯示圖形界面,直接在純文字界

面編輯就行了

•低消耗資源:• 真的不需要太大的資源

Page 76: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

三大終端機上的純文字編器

•vim:老牌純編輯器vi的改良版,簡潔的界面、有目的的設計

•emacs:老牌編輯器,可執行其他程式、快捷鍵操作

•nano:給新手使用的編輯器,會提醒使用者要用什麼快捷鍵

•如果想理解 "vi 與 emacs 的關係" 請參閱:編輯器之戰

Page 77: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

嗯...我好像只會vim所以就來講vim吧!

Page 78: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

為了方便我只會去教部份的指令

Page 79: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

Vim的樣子:

Page 80: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的兩大模式

•1.命令模式:• 在此模式可以直接用指令去控制編輯器

•2.編輯模式:• 此模式則是一般文字編輯的模式

Page 81: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

如何去切換這兩個模式

命令模式 編輯模式

ESC

a、s、i、o

Page 82: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

進入命令模式

•一開始進入vim時,預設是命令模式

•在編輯模式的情況下:• 按下左上的"ESC"鍵

Page 83: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

進入編輯模式

•在指令模式的情況下:• 按下a 游標向後跳一格,再插入• 按下s 刪除游標所在位置的字元,再插入• 按下i 在原來位置插入• 按下o 新增換行符號,再插入

Page 84: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

在vim移動游標

•在指令模式的情況下,除了基本的上下左右操作外,也能:• 按下g(向左)• 按下j(向下)• 按下k(向上)• l(向右)

•補充:這其實和老式鍵盤的配置有關

Page 85: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

在vim移動到文件頂端

•1.進入命令模式•2.按下[[•3.即可移動到文件頂端

Page 86: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

在vim移動到文件底部

•1.進入命令模式•2.按下]] •3.即可移動到文件頂端

Page 87: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的離開方式

•1.進入命令模式•2.輸入:q (quit) 並按下Enter•3.即可離開

Page 88: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的儲存方式

•1.進入命令模式•2.輸入:w (write) 並按下Enter•3.即可儲存

Page 89: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的離開方式(不存檔離開)•1.進入命令模式•2.輸入:!q (強制quit) 並按下Enter•3.即可不存檔離開

Page 90: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的離開方式(儲存並離開)

•1.進入命令模式•2.輸入:wq (write quit) 並按下Enter•3.即可儲存離開

Page 91: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的選取

•1.進入命令模式•2.按下v(v選擇範圍)•3.移動游標選擇範圍•4.即可選取字串

Page 92: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的剪下

•1.進入命令模式•2.按下v(v選擇範圍)•3.移動游標選擇範圍•4.選擇好你要剪下的區域後,按下c (cut)•5.即可剪下

Page 93: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的複製

•1.進入命令模式•2.按下v(v選擇範圍)•3.移動游標選擇範圍•4.選擇好你要剪下的區域後,按下y•5.即可複製

Page 94: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的貼上

•1.進入命令模式•2.按下p (paste)•3.即可貼上

Page 95: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的暫時離開

•1.進入命令模式•2.輸入 ! {CLI指令} 並按下Enter•3.即可暫時離開並執行指令的要求•4.執行完後在按一次Enter即回到vim

Page 96: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的刪除一行

•1.進入命令模式•2.輸入 dd 並按下Enter•3.即可刪除一行

Page 97: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的快速移動位置

•1.進入命令模式•2.輸入 {數字} 並按下Enter•3.即可移動到你現在位置加上輸入的數字的行數

Page 98: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的刪除多行

•1.進入命令模式•2.輸入 d{數字} 並按下Enter•3.即可刪除你現在位置加上輸入的數字的行數

Page 99: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的還原上一步

•1.進入命令模式•2.按下 u •3.即可還原上一步

Page 100: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的重複上一步你做的動作

•1.進入命令模式•2.按下 .•3.即可重複上一步你做的動作

Page 101: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

vim的搜尋

•1.進入命令模式•2.輸入 /{你要搜尋的東西} 並按下Enter•3.即可移動到你想搜尋到東西的位置上

Page 102: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

Linux 終端機上網(w3m)

Page 103: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

指令:w3m•意思:軟體名稱(w3m)

•語法:w3m {網址名}

•用途:在純文字界面上網

•補充:需先安裝w3m的程式

Page 104: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:w3m打開google的指令

Page 105: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:w3m打開google後的畫面

Page 106: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

w3m的控制指令

•q 離開•/ 搜尋•o 選項•B 返回•c 顯示連結•h 向左移動•j 向下移動•k 向上移動•l 向右移動

Page 107: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

w3m的控制指令

•V 載入網頁•S 儲存網頁•H 相關選項•R 重新載入•T 新增分頁•v 檢視原始碼

Page 108: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

w3m的控制指令

•ctrl+C 強制中斷•ctrl+Z 中斷暫停•ctrl+g 顯示編碼•ctrl+h 顯示紀錄•ctrl+k Cookies設定

Page 109: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

Linux 終端機用gcc編譯器

Page 110: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範(一): gcc {程式名.c}

Page 111: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

測試輸出的檔案:

Page 112: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:gcc {程式.c} -o {執行檔.exe}

Page 113: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

測試編譯後的檔案:

Page 114: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

Linux 終端機用git指令

Page 115: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

當然也能做到,但以後再說吧!(有機會的話再聊git的指令)

Page 116: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

示範:git conle {git檔的位置}

Page 117: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

結果:

Page 118: 看似比較簡單的Linux推坑教學 Linux CLI 基本教學

本次的教學文就先寫到這裡~~感謝大家的觀看~~

•下次可能會暫停一次修改"C語言"的教學文

•如果有時間話,我會去研究 Ubuntu Budgie或Zorin OS 12

•課業有點繁忙.......