Mac 怎麼顯示/隱藏隱藏檔案?
技 iLab學校技術長進階技術・終端機・系統維修・依官方資訊整理開始前
在 Finder 裡按一下 Command + Shift + .(句點),隱藏的檔案跟資料夾馬上變灰色浮出來——再按一次就藏回去。這個快捷鍵從 macOS Sierra 開始就有,現在用到 macOS Sequoia 15 依然有效,基本上是最快的辦法。如果你只是臨時想找某個 .env 或 .DS_Store,用這個就夠了,不用多做什麼。
為什麼 Mac 要藏這些檔案?
蘋果把以點號(.)開頭的檔案和資料夾預設隱藏,這個設計沿用自 Unix 傳統——絕大多數人日常根本用不到 .bash_profile、.zshrc、/Library/Caches 裡那些東西,藏起來反而降低誤刪系統設定檔的風險。但開發者、設計師、或是要備份 dotfiles 的用戶,遲早都會需要看到這層。
除了點號開頭的檔案,macOS 還有另一類透過系統旗標(chflags hidden)標記為隱藏的項目,例如 /Volumes、/private。這兩種機制不完全一樣,之後會分別說。
方法一:快捷鍵(最快,臨時用)
適合場景:你已經在 Finder,只是想快速瞄一眼。
- 打開任何 Finder 視窗,或到桌面點一下讓 Finder 成為前景 App
- 按下 Command + Shift + .
- 隱藏檔案以半透明灰色出現;再按一次恢復隱藏
這個快捷鍵的效果是即時的、整個 Finder 全局的,不是只針對當前視窗。你切到別的資料夾,狀態仍然維持,直到你再按一次或重新登入。
方法二:終端機指令(永久開啟/關閉)
如果你想讓 Mac 每次登入都保持顯示隱藏檔案,用終端機寫入偏好設定比較可靠。
開啟顯示隱藏檔案:
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
關閉(恢復預設):
defaults write com.apple.finder AppleShowAllFiles FALSE
killall Finder
killall Finder 會讓 Finder 重新啟動,設定立即生效——視窗會閃一下再回來,這是正常的。如果你用的是 macOS Ventura 13 以前的版本,有些老文章會用 TRUE/FALSE,也有用 true/false,大小寫不影響結果。
驗證設定有沒有寫進去:
defaults read com.apple.finder AppleShowAllFiles
輸出 1 代表顯示,0 代表隱藏。
這個設定存在 ~/Library/Preferences/com.apple.finder.plist,重新開機不會消失,所以只需要寫一次。
方法三:透過「Finder 偏好設定」顯示資料庫資料夾
這個比較不一樣——不是顯示所有隱藏檔案,而是讓 ~/Library 資料夾在 Finder 側欄可見。
方法 A:臨時顯示(一次性)
在 Finder 按住 Option,然後點選選單列「前往」,就會多出一個「資料庫」選項。
方法 B:永久釘到側欄
前往 → 按住 Option → 資料庫 → 進去之後把它拖到 Finder 側欄收藏。
方法 C:終端機解除隱藏旗標
chflags nohidden ~/Library
~/Library 是被 chflags hidden 旗標標記的,和點號開頭機制不同,就算開了 AppleShowAllFiles 也不一定在 Finder 側欄出現。用上面這行指令才能讓它永久可見。要恢復隱藏:
chflags hidden ~/Library
用 Terminal 直接列出隱藏檔案
有時候你不需要在 Finder 看,只是想知道某個目錄下有哪些隱藏項目,終端機的 ls 加 -a 旗標最直接:
ls -la ~/
-l 是長格式(顯示權限、大小),-a 是顯示全部包含隱藏檔案。結果會看到 .zshrc、.zsh_history、.DS_Store 之類的項目,. 和 .. 代表當前目錄和上一層,不是真正的檔案。
只找隱藏的(點號開頭),可以這樣篩:
ls -la ~/ | grep '^\.'
哪些隱藏檔案不要亂動?
顯示了就有誤刪風險,這幾類要特別小心:
| 路徑 | 用途 | 能不能動 |
|---|---|---|
~/.zshrc / ~/.bash_profile | Shell 環境設定 | 可編輯,但備份再動 |
~/.DS_Store | Finder 視窗排版記憶 | 可刪,Finder 會重建 |
/System/Library/ | macOS 系統核心 | 不要動,SIP 保護中 |
/private/var/ | 系統暫存與日誌 | 不要動 |
~/.ssh/ | SSH 金鑰 | 備份;不懂結構前勿亂改 |
.env | 專案環境變數(開發用) | 開發者自用,勿提交 Git |
macOS 從 El Capitan 開始有 SIP(System Integrity Protection),/System、/usr、/bin 等路徑就算你顯示了也無法刪除或修改——這是正確的設計,不要嘗試關掉 SIP 來「解鎖」。
在 Spotlight 與 Alfred 找到隱藏檔案
Spotlight 預設不索引隱藏檔案,就算你在 Finder 打開顯示,Command + Space 搜尋也找不到 dotfiles。要在 Spotlight 搜到隱藏的特定檔案,方法是透過終端機直接用 find:
find ~ -name ".zshrc"
Alfred(第三方 Launcher)加購 Powerpack 後可以在搜尋前輸入空格強制搜尋隱藏檔案,詳情看 Alfred 官方文件。
實際使用場景:開發者最常遇到的幾個情況
場景一:找 .env 設定檔
專案裡的 .env 在 Finder 根本不顯示,直接在終端機 ls -a 確認,或是用快捷鍵打開後找。
場景二:清掉 .DS_Store 遺留
有時候把外接硬碟還給別人,或上傳 NAS,想先清掉所有 .DS_Store:
find . -name ".DS_Store" -delete
在你要清的資料夾裡執行這行,遞迴刪掉所有 .DS_Store。
場景三:備份 dotfiles
開發者常會把 ~/.zshrc、~/.gitconfig、~/.ssh/config 放進 Git 管理(dotfiles repo)。打開顯示隱藏檔案後可以直接從 Finder 拖進去,或用 cp 複製。
場景四:App 偏好設定損毀要刪掉重建
某個 App 出問題,試著刪掉它在 ~/Library/Preferences/ 裡的 .plist 讓它重建。先 killall App名稱,再刪 plist,重開 App。
常見問題
Q:按 Command + Shift + . 沒反應怎麼辦?
A:先確認 Finder 有沒有是前景 App(點一下桌面或 Finder 視窗)。如果你在 Safari 或其他 App 裡按,快捷鍵不會觸發。另外確認沒有其他 App 搶佔了這個快捷鍵(系統設定 → 鍵盤 → 快捷鍵 → App 快捷鍵裡查)。
Q:終端機執行 defaults write 之後,重新開機設定還在嗎?
A:會。defaults write 寫入的是 Finder 的 plist 設定檔,不是只存在記憶體,重開機後仍然有效,直到你手動改回 FALSE。
Q:我已經顯示隱藏檔案,但 /Library 和 /System 還是看不到?
A:磁碟根目錄(/)下的 Library、System、private 等資料夾除了 AppleShowAllFiles 設定外,有些還帶有額外的 chflags hidden 旗標或 SIP 保護。可以從選單 前往 → 前往資料夾 直接輸入路徑 /Library 跳過去,不一定要在 Finder 側欄看到它。SIP 保護的目錄即使可見也無法修改,這是設計行為。
Q:.DS_Store 可以安全刪除嗎?會不會影響系統?
A:安全,Finder 需要的時候會自動重建。刪掉的唯一影響是那個資料夾的圖示排列方式、視窗尺寸記憶會消失,下次開啟回到預設排版。整台 Mac 一次掃掉 .DS_Store 不會有任何問題。
Q:隱藏檔案打開之後 Finder 看起來很亂,有沒有辦法只針對特定資料夾顯示?
A:目前 Finder 沒有「只在這個視窗顯示隱藏檔案」的原生設定,快捷鍵是全局切換。實際操作建議是需要找的時候按一下顯示,找完再按一下藏回去——幾乎不需要永久開著,除非你是每天要跟 dotfiles 打交道的開發者。
如果你在弄 Mac 設定、想知道哪些隱藏路徑可以安全調整、或是選機時想確認這台 Mac 適不適合你的工作流,歡迎來 iLab 門市 聊聊——我們門市的人對這些不陌生,有問題現場示範給你看。
常見問題
按 Command + Shift + . 沒反應怎麼辦?
先確認 Finder 有沒有是前景 App(點一下桌面或 Finder 視窗)。如果你在 Safari 或其他 App 裡按,快捷鍵不會觸發。另外確認沒有其他 App 搶佔了這個快捷鍵(系統設定 → 鍵盤 → 快捷鍵 → App 快捷鍵裡查)。
終端機執行 defaults write 之後,重新開機設定還在嗎?
會。`defaults write` 寫入的是 Finder 的 plist 設定檔,不是只存在記憶體,重開機後仍然有效,直到你手動改回 `FALSE`。
我已經顯示隱藏檔案,但 /Library 和 /System 還是看不到?
磁碟根目錄(`/`)下的 `Library`、`System`、`private` 等資料夾除了 `AppleShowAllFiles` 設定外,有些還帶有額外的 `chflags hidden` 旗標或 SIP 保護。可以從選單 前往 → 前往資料夾 直接輸入路徑 `/Library` 跳過去,不一定要在 Finder 側欄看到它。SIP 保護的目錄即使可見也無法修改,這是設計行為。
`.DS_Store` 可以安全刪除嗎?會不會影響系統?
安全,Finder 需要的時候會自動重建。刪掉的唯一影響是那個資料夾的圖示排列方式、視窗尺寸記憶會消失,下次開啟回到預設排版。整台 Mac 一次掃掉 `.DS_Store` 不會有任何問題。
隱藏檔案打開之後 Finder 看起來很亂,有沒有辦法只針對特定資料夾顯示?
目前 Finder 沒有「只在這個視窗顯示隱藏檔案」的原生設定,快捷鍵是全局切換。實際操作建議是需要找的時候按一下顯示,找完再按一下藏回去——幾乎不需要永久開著,除非你是每天要跟 dotfiles 打交道的開發者。