列出\data\下每一個資料夾大小
你可以使用 ADB 搭配 du 指令來列出 Android 裝置中 /data/ 目錄下每個資料夾的大小。不過,這通常需要 root 權限,因為 /data/ 是系統保護目錄。
/data/ 下每個資料夾的大小bash
adb shell su -c "du -h -d 1 /data/"
su -c:以 root 權限執行(需裝置已 root)du -h:顯示人類可讀格式(KB、MB、GB)-d 1:只列出第一層資料夾大小(不遞迴)12M /data/app
4.0K /data/anr
1.2G /data/data
...
你可以列出 /sdcard/Android/data/(外部儲存)下的資料夾大小:
bash
adb shell du -h -d 1 /sdcard/Android/data/
這對於分析使用者資料(快取、下載等)很有幫助。
/data/data/ 下每個應用資料夾大小(需 root)bash
adb shell su -c "du -h -d 1 /data/data/"
這可以幫你找出哪些應用佔用最多空間。
需要我幫你寫一個批次腳本,自動列出並排序資料夾大小嗎?或者你想把結果導出成檔案?
並且依照大小排序
你可以使用以下 ADB 指令來列出 /data/ 下每個資料夾的大小,並依照大小排序。這需要 root 權限:
/data/ 下資料夾大小並排序(需 root)bash
adb shell su -c "du -k -d 1 /data/ | sort -nr"
du -k:以 KB 為單位顯示大小(更容易排序)-d 1:只列出第一層資料夾sort -nr:依照數字大小(KB)由大到小排序Code
1256780 /data/data
456000 /data/app
32000 /data/dalvik-cache
4000 /data/anr
...
這樣你就能快速找出哪些資料夾佔用最多空間。
/data/data/(應用資料)bash
adb shell su -c "du -k -d 1 /data/data/ | sort -nr"
這會列出每個應用的資料目錄大小,例如:
Code
204800 /data/data/com.whatsapp
102400 /data/data/com.facebook.katana
...
如果你想把結果導出成檔案、或自動分析 top N 應用,我可以幫你寫一個完整的 shell script。要不要來個 class-based 版本,順便加上 log 和錯誤處理?
在 Android 裝置上,ADB 可以幫你清除暫存檔案(temp files)或模擬的「資源回收桶」內容。雖然 Android 沒有真正的「資源回收桶」,但你可以清除以下幾類暫存與垃圾資料:
bash
adb shell su -c "pm trim-caches 99999999999"
99999999999 是最大允許空間,代表「盡可能清除」。bash
adb shell pm clear <package_name>
adb shell pm clear com.facebook.katana
Android 沒有真正的資源回收桶,但某些檔案管理器或相簿 App 會建立類似功能。你可以手動清除這些資料夾:
bash
adb shell rm -rf /sdcard/.Trash/
adb shell rm -rf /sdcard/DCIM/.thumbnails/
adb shell rm -rf /sdcard/Android/data/*/cache/
⚠️ 注意:這些指令會永久刪除檔案,請小心使用。
bash
adb shell rm -rf /sdcard/Download/*
adb shell rm -rf /sdcard/tmp/*
你也可以加上 find 指令刪除特定副檔名:
bash
adb shell find /sdcard/ -name "*.log" -delete
| File2 | File | Last Modified |
|---|---|---|
| 對同一個裝置開啟兩個android adb shell, 它們是跑在不同process嗎? | 對同一個裝置開啟兩個android adb shell, 它們是跑在不同process嗎? | 8:20 PM - December 06, 2025 |
| Android | Android | 8:20 PM - December 06, 2025 |