Linux 指令速查表
這是一份根據前面的學習內容,所整理出的最實用指令速查表。忘記指令的時候,隨時打開這裡就對了!
📂 目錄操作 (Directory)
| 指令 | 常用參數 / 範例 | 說明 |
|---|---|---|
pwd | pwd | (Print Working Directory) 顯示目前所在絕對路徑 |
cd | cd /etc, cd ~, cd .. | (Change Directory) 切換至指定目錄、家目錄、上一層 |
ls | ls -lah | 列出目錄內容。-l 詳細資訊, -a 包含隱藏檔, -h 人類易讀 |
mkdir | mkdir -p a/b/c | 建立新目錄。-p 允許遞迴建立父目錄 |
rmdir | rmdir empty_dir | 刪除「空」目錄 (實務上更常直接用 rm -r) |
📄 檔案管理 (File)
| 指令 | 常用參數 / 範例 | 說明 |
|---|---|---|
touch | touch file.txt | 建立空檔案,或是更新現有檔案的時間 |
cp | cp -r src_dir dest_dir | 複製檔案。複製整個資料夾需加 -r |
mv | mv old.txt new.txt | 移動檔案。在同個路徑下移動等於「重新命名」 |
rm | rm -rf folder | 刪除檔案或目錄。-r 遞迴刪除, -f 強制刪除不提示 |
👀 檢視與搜尋 (View & Search)
| 指令 | 常用參數 / 範例 | 說明 |
|---|---|---|
cat | cat -n file.txt | 一次性正序印出所有內容。-n 顯示行號 |
tac | tac file.log | 倒序印出所有內容 (從最後一行印回來) |
less | less file.txt | 分頁查看模式。可用 / 搜尋,按 q 離開 |
head | head -n 5 file.txt | 查看檔案最前面的 N 行 |
tail | tail -n 10 -f app.log | 查看最後 N 行。-f 會持續追蹤日誌更新 |
grep | grep -i "error" log | 搜尋特定字串。-i 忽略大小寫, -v 反向排除 |
find | find / -name "*.log" | 在系統中尋找檔案。可用 -type f, -size +100M 篩選 |
✍️ 文字編輯 (Editor)
| 指令 | 操作模式 | 說明 |
|---|---|---|
vi | vi file.txt | 啟動純文字編輯器 |
i | (指令模式) | 進入編輯模式 (Insert),開始打字 |
Esc | (編輯模式) | 退出編輯模式,回到一般指令模式 |
:wq | (底線命令) | 存檔並離開 (Write & Quit) |
:q! | (底線命令) | 強制放棄修改並離開 |
gg / G | (指令模式) | 跳轉到檔案的第一行 (gg) 或最後一行 (G) |
yy / p | (指令模式) | 複製整行 (yy) / 貼上 (p) |
dd / u | (指令模式) | 刪除/剪下整行 (dd) / 復原上一步驟 (u) |
📦 打包壓縮 (Archive & Compress)
| 指令 | 常用參數 / 範例 | 說明 |
|---|---|---|
tar | tar -czvf bin.tar.gz /bin | 打包並壓縮 (Create)。f 必須在最後面接檔名 |
tar | tar -xzvf bin.tar.gz | 解壓縮 (eXtract) |
zip | zip -r data.zip folder | 壓縮成跨平台的 zip 格式。目錄需加 -r |
unzip | unzip data.zip | 解壓縮 zip 檔 |
⚙️ 系統變數與其他 (System & Misc)
| 指令 | 常用參數 / 範例 | 說明 |
|---|---|---|
| **` | `** | `ls -l |
env | env | 查看所有有 export 的全域環境變數 |
which | which ls | 尋找指令對應的真實執行檔路徑 (只找 PATH) |
type | type cd | 判斷該指令是內建指令 (builtin)、別名還是外部檔案 |
alias | alias ll='ls -lah' | 建立指令別名 (暫時)。欲永久生效需寫入 ~/.bashrc |
man | man ls | 開啟該指令的官方使用手冊 (Manual) |
apropos | apropos directory | 透過關鍵字反查不知道名稱的指令 |
👥 帳號與群組管理 (Account & Group)
| 指令 | 常用參數 / 範例 | 說明 |
|---|---|---|
id | id alice | 查詢帳號的 UID、主要群組 GID 與隸屬的次要群組 |
getent | getent passwd alice | 查詢系統資料庫。實務上比單純 cat 更精準 |
useradd | useradd -m -s /bin/bash bob | 建立帳號。-m 強制建家目錄, -s 指定 Shell |
passwd | passwd alicepasswd -l alice | 修改密碼。-l (lock) 鎖定禁止登入, -u 解鎖 |
chage | chage -d 0 alice | 修改密碼過期政策。-d 0 強制下次登入立刻改密碼 |
usermod | usermod -aG docker alice | 修改帳號屬性。務必加 -a 附加次要群組以免覆蓋 |
gpasswd | gpasswd -a alice wheelgpasswd -d alice wheel | 管理群組成員。-a 加入成員, -d 踢出成員 |
su | su - alice | 切換身分。強烈建議加 - 模擬完整登入載入環境變數 |
sudo | sudo [指令] | 借用 root 權限執行指令 (需授權且輸入自己的密碼) |
visudo | visudo | 安全地編輯 /etc/sudoers 授權名單,存檔前自動檢查語法 |
userdel | userdel -r alice | 刪除帳號。-r (remove) 會連同家目錄一起徹底刪除 |
🔐 權限管理 (Permissions)
| 指令 | 常用參數 / 範例 | 說明 |
|---|---|---|
chmod | chmod 755 dirchmod +x script.sh | 修改權限。可用數字法 (r=4, w=2, x=1) 或符號法 (+x) |
chown | chown -R root:dev dir | 修改擁有者與群組。-R 遞迴修改底下所有檔案 |
chgrp | chgrp dev_team file | 單純修改檔案群組 (實務上常直接用 chown 一次改完) |
stat | stat file.txt | 查看檔案最詳細的 inode 與權限狀態 |
umask | umask 022 | 查看或設定預設權限屏蔽。預設目錄 755,檔案 644 |