[Week 1] Command Line 基本指令、Vim 簡易操作


Posted by Mily on 2020-06-15

目前我們操作電腦(與電腦溝通)的方式有兩種 :

  • 圖形使用者介面(GUI)
  • 命令列介面(CLI)

圖形使用者介面(GUI)

全名是 Graphical User Interface,是指用圖形方式顯示的電腦操作用戶介面,也是我們平常最常用來操作電腦的方式。若用更白話、簡單的方式來說,就像下圖一樣,我們要新增資料夾時,可以透過滑鼠點擊的方式來操作。

命令列介面(CLI)

全名是 Command-Line Interface,是在 GUI 普及之前最廣泛運用的使用者介面,通常不支援滑鼠,而是利用鍵盤來輸入指令,電腦接收到指令後,將會執行。

學習 Command Line 的理由

在程式開發裡,有很多工具不會提供圖形介面,只能透過指令來操作。

Command Line 基本指令

pwd:印出目前所在位置(Print Working Directory)

ls:印出目前資料夾底下的所有檔案(LiSt)

ls-al:列出詳細資料

ls 後面加上參數 -al ,會列出詳細資料,例如:檔案權限、檔案擁有者、檔案大小、最後修改時間、所有隱藏檔案。

cd:切換資料夾(Change Directory)

cd ..:如果在cd 後面加上 .. 的話,則能夠回到上一層資料夾

clear:清空終端機畫面

想要清空畫面的時候可以輸入這個指令。
超方便!之前不知道這個指令卻又有強迫症想清空畫面,都用很笨的方法關掉再重開終端機。

man 使用說明書(MANual)

舉例:輸入 man ls 後,會列出 ls 的詳細用法。

檔案操作相關指令

touch:建立檔案或更改檔案時間

當檔案「存在」時,輸入 touch 後,檔案修改時間將會更新。

當檔案「不存在」時,輸入 touch 後,將會新增檔案。

rm:刪除檔案(ReMove)

輸入 rm 檔案名稱,即可刪除檔案。

這裡記得需輸入檔案格式,如:.txt、.jpg⋯等。

rm 只能刪除檔案,如果想刪除資料夾的話有幾種作法:

  • rmdir 資料夾名稱 :在 rm 後面加上dir
  • rm -r 資料夾名稱:在 rm 後面加上空格+-r
    • 若檔案本身沒有保護機制,使用 rm -r 指令會直接刪除資料夾及裡面的所有檔案。(慎用!
  • rm -f 即使檔案有保護機制會跳出確認訊息時,使用 rm -f 指令一樣會無視保護機制,直接刪除檔案。(超危險!

mkdir:建立資料夾(Make DIRectory)

輸入 mkdir 資料夾名稱,即可建立資料夾。

mv:移動檔案或改名(MoVe)

移動檔案:

更改檔案名稱:

cp:複製檔案(CoPy)

指令:cp + 原本檔案名稱 + 新複製的檔案名稱
範例: cp test.txt test2.txt

如果要複製「資料夾」的話,要加上 -r
指令:cp + -r + 原資料夾名稱 + 複製的資料夾名稱

Command Line 其他好用指令

grep: 抓取關鍵字

指令:grep + 關鍵字 + 檔案名稱

使用情境示範:
有一個 hello.txt 的文字檔案,內含許多文字,今天我要找出關鍵字 oh 的話,該怎麼做呢?

輸入:grep + oh + hello.txt,即會顯示出擁有 oh 這個關鍵字的所有字句。

wget: 下載檔案

非內建指令,需要先安裝。

指令:wget + 想要下載的圖片網址或檔案網址

curl: 送出 request

redirection: 重新導向 input output

pipe: 指令組合技


Vim 文字編輯器

Vim 是一款歷史悠久,並由 Vi 發展出來的文字編輯器,也是 Git 預設的編輯器。
雖然目前已有許多文字編輯器能夠使用,例如:VS Code、Sublime Text 等,但很多人在使用 Git 過程中,可能會不小心進入這個編輯器,而這個編輯器的使用方式相較其他文字編輯器來說比較特別,需要透過特定指令才能達到輸入文字、存檔,甚至是離開的動作。

Vim 的基本操作

常用模式

Vim 至少有超過五種以上的模式能夠應用,這邊只簡單介紹三種最常使用的模式:

  • 普通模式(預設模式):無法打字的狀態
  • 插入模式:可輸入文字,按 ESC 鍵可回普通模式
  • 命令行模式:可輸入以下所提到的常用指令使用

常用指令

:q:不存檔,直接離開
:q!:不存檔,強制離開(當有修改不想儲存時)
:w:存檔,但不離開
:!w:強制存檔,但不離開
:w {name}:存檔並命名為 name,但不離開
:wq:存檔並離開
:!wq:強制存檔並離開

還有許多未提及的指令及模式可自行查閱。


參考:


(以上內容是我在 程式導師實驗計畫第四期 的學習紀錄,如有理解錯誤,歡迎糾正,謝謝:D)
資料來源:Lidemy


#command line #CLI #vim







Related Posts

Day 0

Day 0

Vue.js 學習旅程Mile 14 – Form Input Bindings 表單綁定篇:v-model

Vue.js 學習旅程Mile 14 – Form Input Bindings 表單綁定篇:v-model

110 四中兩科一政資工所甄試分享

110 四中兩科一政資工所甄試分享


Comments