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

查询CMD在注册表中的位置及命令行编辑快捷方式属性的方法

问题解答

1. CMD 在注册表中的位置

CMD的显示相关设置(包括文本大小、字体、颜色等)主要存储在以下注册表路径:

  • 用户级默认设置:HKEY_CURRENT_USER\Console
    这个路径下的键值会作为所有新CMD窗口的默认配置,比如FontSize(DWORD类型,值为高度<<16 | 宽度,例如16号字体对应值为0x100010)、FaceName(字体名称,如Consolas)等。
  • 特定快捷方式/窗口的自定义设置:如果某一个CMD快捷方式(比如BAT文件的快捷方式)被手动修改过属性,系统会在HKEY_CURRENT_USER\Console下创建一个以该快捷方式目标路径转义后的字符串为名的子项,例如目标为C:\Users\Wen\Desktop\test.bat的快捷方式,对应的子项名称可能是C:_Users_Wen_Desktop_test.bat,里面存储该窗口独有的显示设置。

另外,CMD的命令行为相关设置(比如是否启用延迟扩展)存储在:

  • HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor(系统级)
  • HKEY_CURRENT_USER\Software\Microsoft\Command Processor(用户级)

2. 通过命令行编辑快捷方式属性

可以用PowerShell脚本实现修改快捷方式的显示属性,无需手动操作。以下是示例脚本,用于修改指定BAT快捷方式的字体大小为16号:

$shortcutPath = "C:\Users\Wen\Desktop\MyScript.lnk"
$shell = New-Object -ComObject WScript.Shell
$shortcut = $shell.CreateShortcut($shortcutPath)

# 保存快捷方式原有属性
$shortcut.Save()

# 转义目标路径,匹配注册表子项命名规则
$targetPath = $shortcut.TargetPath -replace "\\", "_"
$regPath = "HKCU:\Console\$targetPath"

# 不存在则创建注册表子项
if (-not (Test-Path $regPath)) {
    New-Item -Path $regPath -Force | Out-Null
}

# 设置字体大小为16(DWORD值,格式为高度<<16 | 宽度,宽度为0表示自适应)
Set-ItemProperty -Path $regPath -Name "FontSize" -Value 0x100010 -Type DWord
# 可选:设置字体为Consolas
Set-ItemProperty -Path $regPath -Name "FaceName" -Value "Consolas" -Type String

如果需要批量修改所有BAT快捷方式的属性,可以遍历目录下的.lnk文件并执行上述逻辑。

另外,若希望所有新创建的CMD/BAT窗口默认使用大字体,直接修改HKEY_CURRENT_USER\Console下的FontSize键值即可,无需逐个修改快捷方式。

内容的提问来源于stack exchange,提问作者Wen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 13:10:58