通过命令调整命令提示符

时间:2011-12-31 15:10:26

标签: batch-file

我想在批处理文件中调整命令提示符窗口的大小,是否可以通过我可以在批处理文件中添加的内容来设置高度和宽度?

8 个答案:

答案 0 :(得分:57)

Modify cmd.exe properties using the command prompt几乎有你所要求的。有关该主题的更多信息,mode con: cols=160 lines=78应该达到您想要的效果。 将160和78更改为您的值。

答案 1 :(得分:11)

mode con:cols=[whatever you want] lines=[whatever you want].

单位是命令提示符中适合的字符数,例如

mode con:cols=80 lines=100

将使命令提示符80宽度和高度100的ASCII字符

答案 2 :(得分:5)

只需输入

即可
MODE [width],[height]

示例:

MODE 14,1

这是可能的最小尺寸。

MODE 1000,1000

是最大的,尽管它可能甚至不适合您的屏幕。 如果要最小化它,请键入

start /min [yourbatchfile/cmd]

当然,要最大化,

start /max [yourbatchfile/cmd]

我目前正在使用相同的批处理文件执行此操作,因此您不必拥有两个或使用cmd启动它。当然,有快捷方式,但我会试着弄明白。

答案 3 :(得分:4)

大多数人都会告诉你运行这个命令:

mode con:cols=80 lines=100

但你应该尝试输入:

MODE 1000

作为批处理文件或cmd提示符中的一行。

答案 4 :(得分:1)

您可以使用/start /max [your batch]它会在屏幕上显示与/min

相反的程序

答案 5 :(得分:1)

如果要全屏运行.bat文件,请右键单击“example.bat”并单击“创建快捷方式”,然后右键单击快捷方式并单击属性,然后单击布局,在布局中可以调整手动将文件归档到屏幕,但是如果使用快捷方式,则只能以这种方式运行。您也可以通过单击字体而不是布局来更改字体大小,选择lucida并调整字体大小,然后单击应用

答案 6 :(得分:0)

虽然此处给出的答案可用于临时更改窗口大小,但它们似乎不会影响字体大小(至少不会影响我的PC)。我有另一种方式。我不知道您是否正在寻找这个,但如果您想自动/永久地更改为控制台字体/窗口大小,您可以随时执行编辑注册表的脚本:

HKEY_CURRENT_USER\Console
HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_cmd.exe
HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_WindowsPowerShell_v1.0_powershell.exe

这些键处理当您运行脚本或按下shift并在此处选择"打开命令提示符时出现的控制台"。开始菜单中的命令提示符条目不使用注册表来存储它的首选项,而是将首选项存储在快捷方式本身中。

我有一台显示器可以在720p本机或1440p超级采样中运行。我需要一个快速的方法来改变我的控制台的字体/窗口大小,所以我制作了这些脚本。这些脚本做了两件事:(1)更改注册表中的字体/窗口大小;(2)将“开始”菜单中的快捷方式换成具有不同窗口和字体大小的快捷方式。我基本上制作了两套命令提示符和Power Shell快捷方式的副本,并将它们存储在Documents中。一组快捷方式配置为Consolas字体大小为16,因为我的显示器是720p(称为"命令提示符.720pRes.lnk"),另一个版本的同一快捷方式配置为字体大小为36(叫它"命令提示符.HighRes.lnk")。该脚本将从我想要使用的集合中复制以覆盖“开始”菜单。

<强>控制台1440p.cmd:

::Assign New Window and Font Size for Windows Command Prompt
set CMDpNewFont=00240000
set CMDpNewWindowSize=000f0078
set commandPromptLinkFlag=highRes



 ::Make temporary .reg file to resize command console

>%temp%\consoleSIZEchanger.reg ECHO Windows Registry Editor Version 5.00
>>%temp%\consoleSIZEchanger.reg ECHO.
>>%temp%\consoleSIZEchanger.reg ECHO [HKEY_CURRENT_USER\Console]
>>%temp%\consoleSIZEchanger.reg ECHO "WindowSize"=dword:%CMDpNewWindowSize%
>>%temp%\consoleSIZEchanger.reg ECHO "FontSize"=dword:%CMDpNewFont%
>>%temp%\consoleSIZEchanger.reg ECHO.
>>%temp%\consoleSIZEchanger.reg ECHO [HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_cmd.exe]
>>%temp%\consoleSIZEchanger.reg ECHO "WindowSize"=dword:%CMDpNewWindowSize%
>>%temp%\consoleSIZEchanger.reg ECHO "FontSize"=dword:%CMDpNewFont%
>>%temp%\consoleSIZEchanger.reg ECHO.
>>%temp%\consoleSIZEchanger.reg ECHO [HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_WindowsPowerShell_v1.0_powershell.exe]
>>%temp%\consoleSIZEchanger.reg ECHO "WindowSize"=dword:%CMDpNewWindowSize%
>>%temp%\consoleSIZEchanger.reg ECHO "FontSize"=dword:%CMDpNewFont%


::Merge and delete consoleSIZEchanger.reg
REGEDIT /S %temp%\consoleSIZEchanger.reg 
del %temp%\consoleSIZEchanger.reg 

::Copy Preconfigured Command Prompt/PowerShell shortcuts to Pinned Start Menu, Accessories and any other Custom Location you would define
copy "%homedrive%%homepath%\Documents\Command Prompt.%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu\Command Prompt.lnk"
copy "%homedrive%%homepath%\Documents\Command Prompt.%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\Command Prompt.lnk"
copy "%homedrive%%homepath%\Documents\Windows PowerShell.%commandPromptLinkFlag%.lnk" "%homedrive%\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\Windows PowerShell\Windows PowerShell.lnk"
copy "%homedrive%%homepath%\Documents\Windows PowerShell.%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu\Windows PowerShell.lnk"                 
copy "%homedrive%%homepath%\Documents\Windows PowerShell (x86).%commandPromptLinkFlag%.lnk" "%homedrive%\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\Windows PowerShell\Windows PowerShell (x86).lnk"
copy "%homedrive%%homepath%\Documents\Windows PowerShell (x86).%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu\Windows PowerShell (x86).lnk"

<强>控制台720p.cmd:

::Assign New Window and Font Size for Windows Command Prompt
set CMDpNewFont=00100000
set CMDpNewWindowSize=0014007d
set commandPromptLinkFlag=720Res



 ::Make temporary .reg file to resize command console
>%temp%\consoleSIZEchanger.reg ECHO Windows Registry Editor Version 5.00
>>%temp%\consoleSIZEchanger.reg ECHO.
>>%temp%\consoleSIZEchanger.reg ECHO [HKEY_CURRENT_USER\Console]
>>%temp%\consoleSIZEchanger.reg ECHO "WindowSize"=dword:%CMDpNewWindowSize%
>>%temp%\consoleSIZEchanger.reg ECHO "FontSize"=dword:%CMDpNewFont%
>>%temp%\consoleSIZEchanger.reg ECHO.
>>%temp%\consoleSIZEchanger.reg ECHO [HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_cmd.exe]
>>%temp%\consoleSIZEchanger.reg ECHO "WindowSize"=dword:%CMDpNewWindowSize%
>>%temp%\consoleSIZEchanger.reg ECHO "FontSize"=dword:%CMDpNewFont%
>>%temp%\consoleSIZEchanger.reg ECHO.
>>%temp%\consoleSIZEchanger.reg ECHO [HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_WindowsPowerShell_v1.0_powershell.exe]
>>%temp%\consoleSIZEchanger.reg ECHO "WindowSize"=dword:%CMDpNewWindowSize%
>>%temp%\consoleSIZEchanger.reg ECHO "FontSize"=dword:%CMDpNewFont%


::Merge and delete consoleSIZEchanger.reg
REGEDIT /S %temp%\consoleSIZEchanger.reg 
del %temp%\consoleSIZEchanger.reg 

::Copy Preconfigured Command Prompt/PowerShell shortcuts to Pinned Start Menu, Accessories and any other Custom Location you would define
copy "%homedrive%%homepath%\Documents\Command Prompt.%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu\Command Prompt.lnk"
copy "%homedrive%%homepath%\Documents\Command Prompt.%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\Command Prompt.lnk"
copy "%homedrive%%homepath%\Documents\Windows PowerShell.%commandPromptLinkFlag%.lnk" "%homedrive%\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\Windows PowerShell\Windows PowerShell.lnk"
copy "%homedrive%%homepath%\Documents\Windows PowerShell.%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu\Windows PowerShell.lnk"                 
copy "%homedrive%%homepath%\Documents\Windows PowerShell (x86).%commandPromptLinkFlag%.lnk" "%homedrive%\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\Windows PowerShell\Windows PowerShell (x86).lnk"
copy "%homedrive%%homepath%\Documents\Windows PowerShell (x86).%commandPromptLinkFlag%.lnk" "%homedrive%%homepath%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu\Windows PowerShell (x86).lnk"

答案 7 :(得分:0)

我知道,这是一个已有8年历史的问题,但是今天仍然可能发生。

可以使用Powershell来实现。 here显示了一个示例。 该cmd的最短命令是:

powershell -command "&{(get-host).ui.rawui.windowsize=@{width=100;height=55};}"

将所需的窗口大小设置为width和high vars。但是,这条短线有两个限制:

  • 确保窗口大小不大于预定义的缓冲区大小。否则会出现错误消息。
  • 取决于系统,Powershell的加载和处理需要2 ... 4秒。有时这是一个漫长的等待时间。

为避免这种情况,请在下面的命令中定义缓冲区大小。此外,该过程与以下其他cmd命令并行运行:

start /b powershell -command "&{$w=(get-host).ui.rawui;$w.buffersize=@{width=177;height=999};$w.windowsize=@{width=155;height=55};}"

buffersize对象的宽度和高度值(此处为177和999)必须大于或等于窗口大小值。