出于某种原因,Windows命令提示符是“特殊的”,因为您必须转到属性对话框来水平调整它的大小,而不是像每隔一个应用程序一样拖动窗口的angular落。 毫不奇怪,这个特性也成了PPP-Powershell – 有没有办法通过命令提示符替代或Windows hackery?
2016更新:
我不知道这是你想要的:调整Powershell控制台窗口。 如果是这样,我前一阵子:只需键入: 调整大小,并使用箭头键来调整宽度和高度。
## ## Author : Roman Kuzmin ## Synopsis : Resize console window/buffer using arrow keys ## function Size($w, $h) { New-Object System.Management.Automation.Host.Size($w, $h) } function resize() { Write-Host '[Arrows] resize [Esc] exit ...' $ErrorActionPreference = 'SilentlyContinue' for($ui = $Host.UI.RawUI;;) { $b = $ui.BufferSize $w = $ui.WindowSize switch($ui.ReadKey(6).VirtualKeyCode) { 37 { $w = Size ($w.width - 1) $w.height $ui.WindowSize = $w $ui.BufferSize = Size $w.width $b.height break } 39 { $w = Size ($w.width + 1) $w.height $ui.BufferSize = Size $w.width $b.height $ui.WindowSize = $w break } 38 { $ui.WindowSize = Size $w.width ($w.height - 1) break } 40 { $w = Size $w.width ($w.height + 1) if ($w.height -gt $b.height) { $ui.BufferSize = Size $b.width $w.height } $ui.WindowSize = $w break } 27 { return } } } }
如果你不介意安装cygwin,你可以在xterm或rxvt中使用它。 你也可以使用Bash作为shell而不是cmd.exe,这样更好。
这不是你正在寻找的东西,但我解决这个问题的方式是使用cygwin的无根X-Windows模式和XTerms。 我更喜欢unix命令行环境,而不是Windows的env,而XTerm窗口就像任何其他窗口一样。
至于直接替换,快速谷歌搜索显示这些:
我没有尝试过,所以我不确定他们是否有你想要的东西,但他们可能值得一试。
PowerShell v2.0附带一个名为PowerShell集成脚本环境(ISE)的交互式shell。 这不是太棒了,但通常比控制台子系统更好。
好
包括一个PowerShell脚本编辑器,具有彩色化
在提示符处作为类型的着色
我可以将多个PowerShell会话(包括远程会话)用作选项卡。
ISE支持PowerShell,所以我可以使用PowerShell进行操作和扩展。 例如,请参阅“IsePack”,其中增加了许多功能,包括复制为HTML。
可以轻松缩放文字
传统的Windows调整大小,光标导航,选择,复制,粘贴,字体等
坏
交互式控制台应用程序阻止等待输入,从而挂起。
检测他们的标准IO是否被重定向的控制台应用程序会认为是这样,因此表现奇怪。 最差的是TFS的tf.exe。 例如,即使提示符是GUI,而不是CLI,'tf submit'也会提示而不提示。
一个有限的功能设置了框。 很明显,他们想制作更丰富的PowerShell IDE,但是却没有。
事后的方式,但事情有所改善。 ConEmu是高度可配置的,可以水平和垂直调整大小。 在调整窗口大小的时候,对字体的大小调整有些奇怪(对我来说)。 这里有一些讨论。 Scott Hanselman已经写了这个 ,包括与FarManager的整合。
你可能会考虑安装FAR 。 这是一个优秀的文本模式文件管理器等等。 它也可以通过拖动窗口的角落来调整大小:)
如果你设置属性“布局/屏幕缓冲大小/宽度”,那么当出现提示时,选择“修改启动这个窗口的快捷方式”,它会记住缓冲区宽度。 然后,当你启动另一个命令提示符时,它将是,例如,原来的80宽,但你现在可以延伸到任何你设置的缓冲区宽度。
命令提示符不会以当前窗口宽度换行,只能以缓冲区宽度换行。 因此,如果将缓冲区宽度设置为120,但窗口宽度仅为80,则行将在120处包装,并且必须滚动才能读取超过80的字符。