從 Windows 遷移至 Linux,最大的障礙非指令語法,而是底層哲學差異。掌握以下 10 項核心觀念,能避開 90% 新手常見陷阱。
File.txt、file.txt、FILE.TXT 是三個不同檔案。指令、參數、路徑、變數名稱全域區分大小寫。
幾乎所有系統層級設定檔(網路、使用者、服務、開機腳本)皆位於 /etc。備份系統設定等同備份 /etc。
.、_、-* ? [ ] { } ; " ' \ | / < > $ ` ! 等 Shell 元字元//usr/local/bin\,兩者互斥所有分區、網路共享、裝置皆掛載於 / 下某目錄(掛載點)。df -h 查看掛載對應關係。
ls -l -a 或 ls -lals --all --human-readable/ 作參數前綴,Linux 以 / 表路徑. 開頭的檔案/目錄,ls 預設不顯示ls -a 顯示全部(含 . 與 ..).bashrc、.ssh/、.config/-rw-r--r-- 1 user1 group1 1024 Jan 1 12:00 file.txt
│││││││││ │ │ │ │ │
│││││││││ │ │ │ │ └─ 修改時間
│││││││││ │ │ │ └─ 大小
│││││││││ │ │ └─ 群組
│││││││││ │ └─ 擁有者
│││││││││ └─ 連結數
││││││││└─ 其他人權限 (r--)
│││││││└─ 群組權限 (r--)
││││││└─ 擁有者權限 (rw-)
│││││└─ 檔案類型 (-=一般檔, d=目錄, l=連結)
一般用戶僅能在 $HOME (/home/username) 下自由建立檔案。
# 開頭為註解行# 註解,新增修改行於下方並加註說明git 或 etckeeper 版控 /etc$HOME,內含 .* 隱藏設定檔/目錄/etc,用戶級設定在 $HOME,兩者疊加生效ls -la ~ 可見大量 . 開頭檔案man cmd # 閱讀指令手冊 (q 離開, /keyword 搜尋)
cmd --help # 快速參數總覽
info cmd # 完整資訊頁面 (支援超連結)
這 10 項觀念構成 Linux 操作的「文法規則」。內化為肌肉記憶後,指令語法、腳本撰寫、故障排查皆將事半功倍。建議新手在虛擬機或容器中大量實作,犯錯、修復、重來,才是最快的學習路徑。