2024-09-30|閱讀時間 ‧ 約 23 分鐘

macOS 終端機 zsh 基本指令操作教學

raw-image
【Flutter 學習筆記】線上課程教學影片:連結
【Flutter 學習筆記】系列文章目錄:連結

什麼是 Shell?

Shell 是一個介於人類與電腦之間的溝通橋樑,讓我們可以透過輸入指令來操作電腦。

人跟電腦溝通,重要的兩座橋樑 (手繪會比就有人情味嗎?)


圖形化介面 (GUI) vs. 命令列介面 (CLI)

  • 圖形化介面 (GUI):這是我們每天都在使用的圖形化介面,例如智慧型手機、電玩遊戲或是電腦上的資料夾瀏覽。GUI 的優點是容易上手,即使沒有太多電腦操作經驗的人也能輕鬆使用。
  • 命令列介面 (CLI):這是以純文字指令來操作電腦的介面,例如 macOS 上的終端機。CLI 的優點在於可以執行更複雜的操作,例如架設伺服器、下載安裝軟體、執行程式碼等等,對於開發者來說更有效率且功能更強大。

macOS 終端機與 Shell

macOS 終端機是一個文字輸入環境,而 Shell 則是讓終端機能夠運作的軟體。macOS 上預設的 Shell 是 zsh (Z Shell)。

如何查看當前使用的 Shell

要查看你當前使用的 Shell,可以在終端機中輸入以下指令:

echo $0

這會顯示當前執行的 shell 名稱。如: zsh 或 bash。如果顯示的 zsh,那麼就是在使用 zsh 的 Shell,如果顯示的 bash,那麼就是在使用 bash 的 Shell。。

echo $SHELL

這個指令會顯示當前使用的 Shell 路徑。如:/bin/zsh 或 /bin/bash。同理,
如果顯示的 zsh 路徑,那麼就是在使用 zsh 的 Shell。

如何安裝 zsh

自 2019 年 10 月發布的 macOS Catalina (macOS 10.15) 起,Zsh(Z Shell)已成為了 macOS 的預設 Shell。如果你需要安裝或更新 zsh,可以使用 Homebrew 這個套件管理工具。首先,確保你已經安裝了 Homebrew,然後在終端機中輸入以下指令:

brew install zsh

安裝完成後,你可以使用 zsh --version 來確認 zsh 是否安裝成功。

如何切換到 zsh

如果你想要切換到 zsh,可以在終端機中輸入以下指令:

zsh

這樣就會啟動 zsh。如果你希望將 zsh 設定為預設的 Shell,可以使用以下指令:

chsh -s /bin/zsh

這個指令會將 zsh 設定為你的預設 Shell。請注意,這個變更可能需要重新啟動終端機才能生效。

重要目錄

  • 根目錄 (/):macOS 上的第一個資料夾,包含系統相關的資料夾。
  • 使用者目錄 (/Users):包含所有使用者的家目錄。
  • 家目錄 (~):每個使用者存放個人檔案的目錄。

開啟終端機時,預設會位於家目錄。

基本指令

  • pwd (顯示當前目錄):顯示目前所在目錄的路徑。
  • ls (列出檔案):列出當前目錄下的所有檔案和資料夾。
  • cd (切換目錄):切換到指定目錄。
    • 使用 cd / 切換到根目錄。
    • 使用 cd ~ 切換到家目錄。
    • 使用 cd .. 切換到上一層目錄。

絕對路徑與相對路徑

  • 絕對路徑:從根目錄開始的完整路徑,例如 /Users/你的使用者名稱/Desktop
  • 相對路徑:從當前目錄開始的路徑,例如 Desktop 表示當前目錄下的 Desktop 資料夾。

建議盡量使用相對路徑,因為這樣在將專案移交給其他使用者時,檔案路徑才不會失效。

建立與刪除檔案和資料夾

  • touch (建立檔案):建立一個新的空檔案。
    • 例如 touch index.html 會建立一個名為 index.html 的檔案。
  • mkdir (建立資料夾):建立一個新的資料夾。
  • 例如 mkdir demo 會建立一個名為 demo 的資料夾。
  • rm (刪除檔案):刪除一個檔案。注意:使用 rm 刪除檔案後將無法復原。
    • 例如 rm index.html 會刪除名為 index.html 的檔案。
  • rmdir (刪除資料夾):刪除一個空的資料夾。
    • 例如 rmdir demo 會刪除名為 demo 的資料夾。
  • rm -r (刪除資料夾與其內容):刪除一個資料夾及其所有內容。注意:使用 rm -r 刪除資料夾後將無法復原,請務必小心使用。
    • 例如 rm -r demo 會刪除名為 demo 的資料夾及其所有內容。

複製和移動檔案

  • cp (複製檔案):複製檔案到指定位置。
    • 例如 cp index.html demo/ 會將 index.html 檔案複製到 demo 資料夾中。
  • cp -r (複製資料夾):複製資料夾到指定位置。
    • 例如 cp -r demo ~/Desktop/ 會將 demo 資料夾複製到 Desktop 資料夾中。
  • mv (移動檔案):移動檔案或資料夾到指定位置,也可以用來重新命名檔案。
    • 例如 mv index.html demo/ 會將 index.html 檔案移動到 demo 資料夾中。
    • 例如 mv index.html index2.html 會將 index.html 檔案重新命名為 index2.html

注意事項

指令中的空格非常重要。如果檔名或資料夾名稱中含有空格,請在空格前加上反斜線 (\) 來 escape,例如 mkdir my\ demo

Flags

Flags 是可以附加在指令後面的選項,用來改變指令的行為。

  • 例如 rm -r 中的 -r 就是一個 flag,表示要遞迴刪除資料夾及其內容。
  • 可以使用 man 指令查詢每個指令的 flags,例如 man rm 會顯示 rm 指令的說明文件。

結論

透過這篇文章教學,讀者應該對 macOS 終端機及其基本指令有了初步的了解。雖然命令列介面可能在一開始看起來有些嚇人,但隨著練習,你會發現它的強大與靈活性。希望這篇文章能幫助你在使用 macOS 終端機的旅程中更得心應手!

分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.