Command Line
什麼是 CLI?
Command Line 就像是在呼喚 Siri 一樣,跟 Siri說:「 Hey! Siri,幫我打給Kayla 」,這時候你就省略掉,找到電話 icon,搜尋 Kayla 電話,按下通話的步驟,用另一種方式告訴手機,你現在要做什麼。
和電腦溝通的方式分做兩種,一種是 GUI(Graphical User Interface),也就是目前我們在操作電腦看到的圖形化視覺介面,從我們所看到的圖示操作。另一種則是現在要教你的 CLI(Command Line Interface),直接透過純文字的方式,跟電腦溝通,告訴電腦現在要做什麼。
透過在終端機輸入 command line 指令,用文字的方式與電腦溝通。
關於 CLI 指令:
- pwd (Print Working Directory): 印出目前位置
ls (LiSt): 印出目前所在資料夾底下的檔案清單。
ls -al
:- + 參數
,列印出更詳細的檔案資料。(檔案權限/owner/修改日期/隱藏檔案...)
cd (Change Divectory):切換檔案
cd ..
:目前所在的資料夾再往上一層
clear:清除
- man (MANual): 叫出使用說明書指南。按 Q 離開
touch:建立檔案/更改檔案時間
更改檔案時間:
touch + 已存在檔案
EX:touch 每日心得.md
修改日期更新為 12:03
建立檔案:
touch + 新檔案名稱
EX:touch new.doc
新增一個 new.doc 檔案
- rm (ReMove):刪除檔案
rm +檔名
rm -f
:強制刪除rmdir
或rm -r
:刪資料夾內所有檔案
- mkdir (Make DIRectory):新增資料夾
- mv (Move):移動資料夾/修改檔名
- 檔名重新命名:
mv + 要更換檔案 + 更改檔名
- 移動檔案:
mv + 要移動檔案 + 目的地
- 檔名重新命名:
- cp(CoPy):
- 複製檔案:
cp + 複製原檔 + 複製新檔檔名
- 複製資料夾:同 rm 概念,
cp -r deep deep2
- 複製檔案:
- vim:文字編輯器
- step1:
vim + 檔名
,進入到 vim 視窗 - step2:切換模式進行指令操作
- 1.編輯:
* `i` insert:進行檔案內容編輯。 * `esc`:一般模式,無法進行內容編輯。 * `o`:new line
- 2.存檔:在
esc
下按下:w
- 3.離開:
q
離開編輯器/:wq
存檔後離開/q!
有修改內容但不儲存,強制離開 - Note:vim 操作入門教學、簡單版 vim 架構
- 1.編輯:
- step1:
- cat:
cat +檔名
連接檔案/快速查看檔案內容- 印出檔案內容
- 連接檔案
cat input.txt | node OJ.js
- 印出檔案內容
- grep:抓取檔案
grep + 要抓取的資料 + 檔案名稱
會將要抓取的資料,以其他顏色特別標示出來。
EX:抓取每日心得.md 中的,hw 文字。
wget:下載檔案/網頁原始碼
- 非內建指令,需另外下載。使用 Homebrew 安裝:
brew install wget
- 使用方式:
wget + 路徑網址
- Note:關於 homebrew 常用指令
- 非內建指令,需另外下載。使用 Homebrew 安裝:
curl:送出 request,測試 API 使用。
指令 | 說明 |
---|---|
-I | curl + URL -I ,取得 Header 資料 |
-L | 跟隨著網址 301/302 redirect |
-H | 設定 request 裡所攜帶的 header |
-X | GET, POST, PUT, DELETE, PATCH 指定的 http method 來發出 http request |
Note:CURL 指令
>
重新導向(redirection):重新導向input/output。- Ex:
ls -al > result
:將ls -al
結果,輸出導到 result 檔案)
- Ex:
echo + text
:印出 echo 後面的東西,輸出在 CLI 中。Ex:echo "123"
,顯示出123
- 將內容導入:
echo "456" > 123.txt
,456 內容會覆蓋檔案出現在 123.txt 裡- 新增內容導入:
echo "456" >> 123.txt
,將 456 內容新增在 123.txt 內容之後。note:>>
:稱作 append:append to the end og the file
- 新增內容導入:
- 將內容導入:
|
pipe:將|
左邊指令的輸出,變成右邊指令的輸入。EX:cat input.txt | node OJ.js
以上為程式導師實驗計畫筆記內容,如有錯誤還請不吝指教。