[Windows 10] 用compact.exe控制系統檔案壓縮狀態

最近在更新了組建10.10586(版本1151,KBKB3118754)後,在工作管理員裡經常發現有個「系統與壓縮的記憶體」的處理程序在執行,因而知道了Windows 10為了節省系統檔案的磁碟空間,會將系統檔案壓縮起來,在執行時再動態解壓縮執行,我們可以用 compact.exe 來查看那些檔案是被壓縮的。下例顯示在C:\Windows資料夾裡有13個壓縮檔,如explorer.exe原始大小是4,532,304 Bytes,壓縮後是2,293,760 Bytes,縮小了一半的大小:

C:\Windows>compact | find " x "
    61952 :     36864 = 1.7 到 1 x bfsvc.exe
    32200 :      8192 = 3.9 到 1 x Enterprise.xml
  4532304 :   2293760 = 2.0 到 1 x explorer.exe
   994816 :    344064 = 2.9 到 1 x HelpPane.exe
    18432 :     12288 = 1.5 到 1 x hh.exe
    43131 :     16384 = 2.6 到 1 x mib.bin
   215040 :    167936 = 1.3 到 1 x notepad.exe
   156160 :     98304 = 1.6 到 1 x regedit.exe
   128000 :     86016 = 1.5 到 1 x splwow64.exe
    60416 :     36864 = 1.6 到 1 x twain_32.dll
    10240 :      8192 = 1.3 到 1 x winhlp32.exe
   316640 :     90112 = 3.5 到 1 x WMSysPr9.prx
    11264 :      8192 = 1.4 到 1 x write.exe

在Windows 10手機或平板等容量受限的設備上,這個功能會較有幫助,但桌機似乎不需要這個壓縮功能(視本身的狀況而定吧?),我們可以用下列指令查看目前系統的壓縮狀態:

C:\Users\Jerry>COMPACT.EXE /CompactOS:query
系統正處於壓縮狀態。除非系統管理員變更,否則會維持此狀態。

用下列指令就解取消壓縮,這個指令我的筆電跑了快5分鐘:

C:\Users\Jerry>COMPACT.EXE /CompactOS:never
正在解壓縮作業系統二進位檔 -

完成後會顯示:

完成解壓縮作業系統二進位檔。
在目錄 15028 下的 20097 個檔案已解壓縮。

compact.exe完整的選項用「/?」就能列出。

C:\Windows>compact /?
顯示或修改 NTFS 磁碟分割上的檔案壓縮。

COMPACT [/C | /U] [/S[:dir]] [/A] [/I] [/F] [/Q] [/EXE[:algorithm]]
        [/CompactOs[:option]] [filename [...]]

  /C         壓縮指定的檔案。除非指定 /EXE,否則會標示目錄,使系統壓縮以後新增
            到該目錄中的檔案。
  /U        解壓縮指定的檔案。將標示目錄,使系統不再壓縮以後新增到該目錄中的
            檔案。若指定 /EXE,則只會解壓縮已壓縮為可執行檔的檔案; 若省略此
            參數,則只會解壓縮 NTFS 壓縮的檔案。
  /S        在指定目錄與其中所有子目錄中的檔案上執行指定的操作。預設的 "dir"
            是目前的目錄。
  /A        顯示具有隱藏或系統屬性的檔案。預設會省略這些檔案。
  /I        即使發生錯誤,也繼續執行指定的操作。根據預設值,當發生錯誤時,
            COMPACT 會停止。
  /F        在指定的檔案上強制執行壓縮操作,即使檔案已壓縮。預設會略過已壓縮
            的檔案。
  /Q        只報告最基本的資訊。
  /EXE      針對頻繁讀取且未修改的可執行檔使用最佳化壓縮。支援的演算法是:
            XPRESS4K  (最快) (預設值)
            XPRESS8K
            XPRESS16K
            LZX       (最小)
  /CompactOs 設定或查詢系統壓縮狀態。支援的選項為:
             query  - 查詢系統壓縮狀態。
             always - 壓縮所有作業系統二進位檔,並將系統狀態設定為 [壓縮],
                      除非系統管理員變更,否則將維持此狀態。
             never  - 解壓縮所有作業系統二進位檔,並將系統狀態設定為 [不壓縮],
                      除非系統管理員變更,否則將維持此狀態。
  filename  指定樣式、檔案或目錄。

  未指定任何參數時,COMPACT 會顯示目前目錄與其中包含之所有檔案的壓縮狀態。您
  可以使用多個檔案名稱與萬用字元。您必須在各參數之間使用空格來分隔。

參考連結

##

您可能也會有興趣的類似文章

簡睿

服務於軟體業的資訊老兵。興趣廣泛,學習力佳,樂於分享所知所學。

您可能也會喜歡…

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *