You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统中能否按文件扩展名配置NTFS压缩规则

Windows系统中能否按文件扩展名配置NTFS压缩规则

你好呀!Windows系统本身并没有提供直接的图形化选项,能让你按文件扩展名批量设置NTFS压缩规则——也就是说没法直接在系统设置里勾选“压缩这些扩展名,排除那些”。不过别担心,我们可以用脚本或者命令行工具轻松实现这个需求,不用手动一个个操作。

核心思路

NTFS压缩是基于文件或文件夹属性的设置:如果给某个文件夹开启压缩,里面的现有文件和新添加的文件都会自动被压缩,但系统没法直接按扩展名筛选。所以要实现你的需求,就得通过脚本遍历文件,给指定扩展名的文件开启压缩属性,同时跳过那些你不想压缩的类型。

具体实现方法

方法一:PowerShell脚本(推荐,一次性处理所有规则)

Windows自带PowerShell,你可以直接用它写个脚本递归处理目标文件夹里的所有文件。把下面的代码复制到记事本里,修改目标路径后保存为.ps1格式(比如NTFSCompressByExt.ps1),右键选择“用PowerShell运行”即可:

# 定义需要压缩的文件扩展名(注意加英文点号)
$compressExts = @(".doc", ".txt", ".bmp")
# 定义不需要压缩的文件扩展名
$excludeExts = @(".hc", ".mkv", ".mp4", ".ogg", ".7z", ".zip", ".odt", ".docx", ".png", ".jpg")

# 替换成你要处理的根文件夹路径,比如 "D:\MyDocuments"
$rootPath = "你的目标文件夹路径"

# 递归遍历所有文件并处理
Get-ChildItem -Path $rootPath -Recurse -File | ForEach-Object {
    # 先检查是否在排除列表,是则取消压缩(如果已压缩)
    if ($excludeExts -contains $_.Extension) {
        if ($_.Attributes -band [IO.FileAttributes]::Compressed) {
            Write-Host "取消压缩:$($_.FullName)"
            compact /U "$($_.FullName)" | Out-Null
        }
        return
    }
    # 再检查是否在需要压缩的列表,是则开启压缩(如果未压缩)
    if ($compressExts -contains $_.Extension) {
        if (-not ($_.Attributes -band [IO.FileAttributes]::Compressed)) {
            Write-Host "压缩:$($_.FullName)"
            compact /C "$($_.FullName)" | Out-Null
        }
    }
}

这个脚本会自动:

  • 递归遍历目标文件夹下的所有文件
  • 给.doc/.txt/.bmp文件开启NTFS压缩(如果还没压缩)
  • 确保.hc/.mkv等你指定的文件不会被压缩(如果之前被压缩了会自动取消)

方法二:CMD命令行(逐个扩展名处理)

如果你不想写脚本,也可以用系统自带的compact命令,针对单个扩展名批量处理:

  • 压缩所有.doc文件(递归处理子文件夹):
    compact /C /S:"D:\YourFolder" *.doc
    
  • 取消所有.mkv文件的压缩:
    compact /U /S:"D:\YourFolder" *.mkv
    

这种方式需要逐个执行对应扩展名的命令,适合需求简单的场景。

额外提醒

  • 如果希望新添加的符合条件的文件自动被压缩,可以先给父文件夹开启NTFS压缩(右键文件夹→属性→高级→勾选“压缩内容以便节省磁盘空间”),然后用上面的脚本定期运行(比如通过任务计划程序设置每周执行一次),来自动取消那些你不想压缩的新文件的压缩属性。
  • NTFS压缩会增加CPU负载,因为读写文件时需要实时解压/压缩,所以如果是频繁访问的文件,压缩可能会影响系统性能,这点要根据你的实际情况权衡。

备注:内容来源于stack exchange,提问作者Chameleon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 12:22:57