我最近了解到我可以控制运行程序的CMD窗口的大小mode x,y.然而,我刚刚注意到这设置了缓冲区大小,窗口将调整为匹配或最大屏幕大小.
我想mode 100,50用于窗口大小,但我也想保留一个arger缓冲区 - 至少我希望开发mode 100,9999.
有没有办法做到这一点?
dbe*_*ham 26
我不认为有一个本机批处理命令可以独立控制缓冲区和窗口大小..NET可以控制两者,但我不认为VBScript或JScript可以访问该功能.但是PowerShell可以:-)请参阅如何扩展Windows PowerShell控制台的宽度?
值得庆幸的是,当PowerShell退出时,新设置将保留在CMD窗口中.
窗口大小始终小于或等于缓冲区大小非常重要.为简化起见,我首先使用MODE将窗口和缓冲区设置为所需的窗口大小,然后使用powershell设置缓冲区大小.
这是一个简单的conSize.bat混合批处理/ powershell脚本,它将大小作为参数:
@echo off
:conSize winWidth winHeight bufWidth bufHeight
mode con: cols=%1 lines=%2
powershell -command "&{$H=get-host;$W=$H.ui.rawui;$B=$W.buffersize;$B.width=%3;$B.height=%4;$W.buffersize=$B;}"
Run Code Online (Sandbox Code Playgroud)
要获得所需的尺寸,您只需使用即可
call conSize 100 50 100 9999
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11585 次 |
| 最近记录: |