使用命令提示符修改cmd.exe属性

时间:2009-06-03 15:50:34

标签: command-line command-prompt cmd

这不是很好的递归吗?

我的外置硬盘上有一个可移植的命令提示符,它有一个很好的.bat文件来配置一些初始设置,但我还想要更多!

以下是我知道如何从.bat:

设置的内容
  • 颜色=(颜色XY)其中x和y是预定义颜色的十六进制数字
  • 提示=(提示$ p $ g)将提示设置为“C:\ etc \ etc>”默认提示
  • Title =(title“text”)将窗口标题设置为“text”
  • 屏幕尺寸=(模式con:cols = XX行= YY)设置窗口的列和行大小
  • 路径=(SET PATH =%~d0 \ bin;%PATH%)设置我的工具的本地路径并附加计算机的路径

所以这一切都很棒。但是有一些设置我似乎无法从蝙蝠设置。比如,如何使用“属性”对话框设置这些内容:

  • 缓冲区=不是屏幕尺寸,而是缓冲区
  • 快速编辑模式和自动填充等选项
  • 弹出颜色
  • 字体。您可以在便携式驱动器上使用字体,还是必须安装才能工作?
  • 命令历史记录选项

4 个答案:

答案 0 :(得分:29)

关于设置缓冲区大小:

使用mode con: cols=XX lines=YY不仅设置窗口(屏幕)大小,还设置缓冲区大小。

如果您指定系统允许的大小,则根据可用的屏幕大小,您将看到窗口和缓冲区维度都设置为相同的值; .e.g:

mode con: cols=100 lines=30

导致以下结果(值相同):

  • 窗口大小:宽度= 160 ,高度= 78
  • 缓冲区大小:宽度= 160 ,高度= 78

相反,如果根据可用的屏幕大小指定过大的值,您将看到窗口大小更改为最大值,但缓冲区大小更改为指定的值。

mode con: cols=1600 lines=900

屏幕分辨率为1280x1024,您将获得:

  • 窗口大小:宽度= 160 ,高度= 78
  • 缓冲区大小:宽度= 1600 ,高度= 900

答案 1 :(得分:6)

关于自动完成:

  

文件和目录名称完成   默认情况下未启用。您可以   启用或禁用文件名完成   对于CMD.EXE的特定调用   使用/ F:ON或/ F:OFF开关。您   可以启用或禁用完成   CMD.EXE上的所有调用   机器和/或用户登录会话   设置其中一个或两个   以下REG_DWORD值   注册表使用REGEDT32.EXE:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar

    and/or

HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar
     

使用控件的十六进制值   用于特定的字符   函数(例如0x4是Ctrl-D和0x6   是Ctrl-F)。用户具体   设置优先于   机器设置。命令行   交换机优先于   注册表设置。

     

如果启用了完成功能   / F:ON开关,两个控制   使用的字符是Ctrl-D for   目录名称完成和Ctrl-F   用于文件名完成。要禁用   特定的完成角色   注册表,使用空间值   (0x20)因为它不是有效的控件   字符。

在那里找不到任何命令历史记录选项(cmd /?),看起来您询问的其他选项是通过注册表设置专门设置的。

答案 2 :(得分:4)

对于真正的缓冲区大小调整,请使用DOSKEY / LISTSIZE = size

由于Microsoft从命令/ cmd提示中取出ANSI ESC控件,因此无法再更改shell中的颜色。

答案 3 :(得分:4)

您可以通过快捷方式(.LNK文件)设置这些值。

我的桌面上有一个快捷方式,其中包含“目标:”

%windir%\ system32 \ cmd.exe / K C:\ MIKE \ STARTUP.CMD

/ K开关告诉CMD运行批处理文件(设置一些变量,提示等),然后保持打开状态。

如果右键单击快捷方式并查看其属性,则可以设置窗口和缓冲区大小,弹出颜色,起始位置(x,y轴)等。设置将保存在快捷方式中,并且将是每次使用该快捷方式打开CMD时都应用。