適合課堂投影片補充、實機操作示範、以及學生課後自學。
主軸是「看得懂、打得出來、知道何時用」。
bash。/home/user 與 ../。sudo 使用。Tab 自動補齊檔名或指令↑ / ↓ 叫出歷史指令Ctrl + C 中斷目前執行中的程式Ctrl + L 清空畫面pwd 查看目前所在目錄sudo、rm、chmod 的命令。| 分類 | 指令 | 用途 | 範例 |
|---|---|---|---|
| 目前位置 | pwd | 顯示目前所在目錄 | pwd |
| 列出檔案 | ls | 查看目錄內容 | ls -al |
| 切換目錄 | cd | 移動到指定資料夾 | cd /home/minhuang |
| 建立資料夾 | mkdir | 建立新目錄 | mkdir lab01 |
| 建立空檔 | touch | 建立檔案 | touch note.txt |
| 複製 | cp | 複製檔案或資料夾 | cp a.txt backup/a.txt |
| 搬移/重新命名 | mv | 移動檔案或改名 | mv old.txt new.txt |
| 刪除 | rm | 刪除檔案 | rm test.txt |
| 刪除資料夾 | rm -r | 遞迴刪除資料夾 | rm -r old_dir |
| 查看內容 | cat | 直接顯示文字檔內容 | cat README.md |
| 分頁閱讀 | less | 逐頁查看長檔案 | less /var/log/syslog |
| 編輯器 | nano | 文字模式編輯檔案 | nano report.txt |
| 搜尋文字 | grep | 搜尋關鍵字 | grep "error" app.log |
| 搜尋檔案 | find | 依名稱或條件找檔案 | find . -name "*.c" |
| 權限 | chmod | 修改檔案權限 | chmod +x run.sh |
| 擁有者 | chown | 修改檔案擁有者 | sudo chown user:user file.txt |
| 系統管理 | sudo | 以管理者權限執行 | sudo apt update |
| 套件管理 | apt | 安裝、更新、移除套件 | sudo apt install git |
| 網路測試 | ping | 測試網路連線 | ping 8.8.8.8 |
| 顯示程序 | ps | 查看執行中的程序 | ps aux |
| 即時監看 | top | 查看 CPU/記憶體使用 | top |
| 終止程序 | kill | 結束指定程序 | kill 1234 |
| 磁碟空間 | df -h | 查看磁碟剩餘空間 | df -h |
| 目錄大小 | du -sh | 查看資料夾大小 | du -sh ./data |
| 下載檔案 | wget | 從網址下載檔案 | wget https://example.com/a.zip |
| 版本控制 | git | 管理程式碼版本 | git status |
| 遠端連線 | ssh | 連到其他主機 | ssh user@192.168.1.10 |
pwd
ls
ls -al
mkdir demo_linux
cd demo_linux
touch hello.txt
ls
echo "Hello Ubuntu" > hello.txt
cat hello.txt
cp hello.txt hello_backup.txt
mv hello_backup.txt backup.txt
rm backup.txt
/home/student/file.txt 是絕對路徑./file.txt 是相對路徑.. 代表上一層目錄Report.txt 與 report.txt 是不同檔案sudocat file.txt | grep error
這代表先顯示檔案,再把結果交給 grep 搜尋。
| 情境 | 指令 | 說明 |
|---|---|---|
| 檢查 USB 裝置 | lsusb | 查看開發板、轉接器、USB 裝置 |
| 檢查序列埠 | ls /dev/tty* | 確認 Arduino、ESP32、USB-UART 埠 |
| 查看網路介面 | ip a | 查詢 IP 與網卡狀態 |
| 查看路由 | ip route | 理解封包走向 |
| 測試連到樹莓派 | ssh pi@192.168.x.x | 遠端登入裝置 |
| 安裝開發工具 | sudo apt install build-essential | 安裝 gcc、g++、make |
cat 顯示內容grep 搜尋指定文字find 找出副檔名為 .txt 的檔案學生只要先熟練這些指令,就已經具備 Ubuntu 入門操作能力,後續再銜接 C/C++ 開發、Python、自動化腳本、Git、SSH、樹莓派與 IoT 開發都會順很多。