出于某种原因,Windows命令提示符是“特殊的”,因为您必须转到属性对话框以水平调整其大小,而不是像其他应用程序一样拖动窗口的一角。不出所料,这个功能也成为了P-P-P-Powershell - 有没有办法通过命令提示替换或Windows hackery来解决这个问题?
答案 0 :(得分:30)
2016年更新:
答案 1 :(得分:12)
我不知道这是否是您想要的:调整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
}
}
}
}
答案 2 :(得分:3)
如果您不介意安装cygwin,可以将它与xterm或rxvt一起使用。您还可以使用Bash作为shell而不是cmd.exe,这样可以更好。
答案 3 :(得分:3)
这不是你想要的,但我解决它的方法是使用cygwin的无根X-Windows模式和XTerms。我比Windows的env更喜欢unix命令行环境,而XTerm窗口就像任何其他窗口一样。
至于直接替换,快速谷歌搜索显示这些:
我没有尝试过,所以我不确定他们是否有你想要的东西,但他们可能值得一试。
答案 4 :(得分:2)
PowerShell v2.0附带了一个交互式shell,称为PowerShell集成脚本环境(ISE)。它并不太棒,但它通常比控制台子系统更好。
不可强>
包含带着色的PowerShell脚本编辑器
在提示符下作为类型着色
我可以将多个PowerShell会话(包括远程会话)作为标签。
ISE支持PowerShell,因此我可以使用PowerShell对其进行操作和扩展。例如,请参阅“IsePack”,它增加了大量功能,包括copy-as-HTML。
可以轻松缩放文字
传统的Windows调整大小,光标导航,选择,复制,粘贴,字体等
<强>为强>
交互式控制台应用程序阻止等待输入,因此挂起。
检测其标准IO是否被重定向的控制台应用程序会认为是这样,因此行为奇怪。最糟糕的是TFS的tf.exe。例如,'tf submit'将在没有提示的情况下提交,即使提示是GUI,也不是CLI。
开箱即用的有限功能。显而易见,他们希望制作更丰富的PowerShell IDE,但却没有。
答案 5 :(得分:2)
事后的方式,但事情有所改善。 ConEmu具有高度可配置性,可以水平和垂直调整大小。当窗口调整大小时,它有点奇怪(对我而言)调整字体大小的行为。有一些关于它的讨论here。 Scott Hanselman有written about it,包括与FarManager的集成。
答案 6 :(得分:0)
您可以考虑安装FAR。它是一个出色的文本模式文件管理器等等。它也可以通过拖动窗口的角来调整大小:)
答案 7 :(得分:0)
如果设置属性“布局/屏幕缓冲区大小/宽度”,则在出现提示时选择“修改启动此窗口的快捷方式”,它将记住缓冲区宽度。然后,当你启动另一个命令提示符时,它将是,例如,原始的80宽,但你现在可以将它拉伸到你设置缓冲区宽度的任何内容。
命令提示符不会在当前窗口宽度处换行,仅在缓冲区宽度处换行。因此,如果您将缓冲区宽度设置为120,但窗口仅为80宽,则线条将换行为120,并且您必须滚动以读取超过80的字符。