Windows有更好的命令提示吗?

时间:2008-09-30 16:58:50

标签: windows command-line cmd

出于某种原因,Windows命令提示符是“特殊的”,因为您必须转到属性对话框以水平调整其大小,而不是像其他应用程序一样拖动窗口的一角。不出所料,这个功能也成为了P-P-P-Powershell - 有没有办法通过命令提示替换或Windows hackery来解决这个问题?

8 个答案:

答案 0 :(得分:30)

2016年更新:

  • Windows 10的默认conhost UI具有更多功能,包括免费调整大小,透明度等(包括cmd& powershell)
  • 我现在使用ConEmu(演练here),其中包含很多功能,包括标签&拆分窗格。
  • 其他选项包括Cmder(内置其他工具)和ConsoleZ(Console2的分支)。
  • Console似乎不再更新

答案 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的字符。