2008-09-30 55 views
32

出於某種原因,Windows命令提示符是「特殊的」,因爲您必須轉到屬性對話框來水平調整它的大小,而不是像每個其他應用程序一樣拖動窗口的角落。毫不奇怪,這個特性也使它成爲P-P-P-Powershell - 有沒有通過命令提示符替代或Windows hackery解決這個問題的方法?是否有更好的Windows命令提示符?

+2

它實際上是Windows控制檯子系統的工件,以及它如何與GUI進行交互。相關功能(包括命令歷史記錄和功能鍵)不是特定於外殼的,並且即使在自己的控制檯應用程序中也可以工作Powershell只是從csrss(或更高版本的Windows中的conhost)繼承這一切。 – Joey 2009-08-01 19:19:24

+0

可能的重複[是否有更好的Windows控制檯窗口?](http://stackoverflow.com/questions/60950/is-there-a-better-windows-console-window) – 2014-07-10 15:23:23

+0

Powershell作爲一種「語言」但它受限於與cmd.exe幾乎相同的可怕90年代控制檯體驗 – 2014-08-21 14:35:56

回答

30

2016更新:

  • 的Windows 10的默認conhost UI具有更多的功能,包括自由調整大小,透明度,等等(這包括CMD & PowerShell中)
  • 我現在用ConEmu(演練here),其中有許多功能包括標籤&拆分窗格。
  • 其他選項包括Cmder(附帶內置附加工具)和ConsoleZ(Console2的一個分支)。
  • Console似乎不再更新
+0

Console ++用於eTerm-like透明度,但我無法調整窗口大小..應該使用1.5還是2.0版本? – Luke 2008-09-30 17:06:53

0

你可能會考慮安裝FAR。這是一個出色的文本模式文件管理器等等。它也可以通過拖動窗口的角落來調整大小:)

3

如果你不介意安裝cygwin,你可以在xterm或rxvt中使用它。你也可以使用Bash作爲shell而不是cmd.exe,這更好。

3

這不完全是你要找的,但我解決它的方式是使用cygwin的無根X-Windows模式和XTerms。我更喜歡unix命令行環境,而不是Windows的env,而XTerm窗口就像其他窗口一樣。

至於直替換,一個快速谷歌搜索顯示了這些:

我還沒有嘗試過,所以我不知道他們有什麼你正在尋找,但他們可能值得一試。

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 
     } 
    } 
    } 
} 
0

如果設置屬性「佈局/屏幕緩衝區大小/寬度」,那麼,在出現提示時,選擇「修改啓動該窗口的快捷鍵」,它會記住緩衝區的寬度。然後,當你啓動另一個命令提示符時,它將是,例如,原來的80寬,但你現在可以將它擴展到任何你設置緩衝區寬度。

命令提示符不會以當前窗口寬度換行,只能以緩衝區寬度換行。因此,如果您將緩衝區寬度設置爲120,但窗口寬度僅爲80,則線條將在120處包裝,並且您必須滾動以讀取超過80的字符。

2

PowerShell v2.0隨附交互式shell,稱爲PowerShell集成腳本環境(ISE)。這不是太棒了,但通常比控制檯子系統更好。

  • 包括PowerShell腳本編輯器,用彩色

  • 彩色化作爲在提示符下鍵入

  • 我可以有多個PowerShell會話,包括遠程會議,作爲標籤。

  • ISE支持PowerShell,所以我可以使用PowerShell進行操作和擴展。例如,請參閱「IsePack」,其中添加了許多功能,包括複製爲HTML。

  • 可以輕鬆擴展的文本

  • 慣用窗口大小調整,光標導航,選擇,複製,粘貼,字體等

  • 互動控制檯應用程序阻止等待輸入,從而掛起。

  • 控制檯應用程序檢測他們的標準IO是否被重定向會認爲是這樣,因此很奇怪。最糟糕的是TFS的tf.exe。例如,即使提示符是GUI,而不是CLI,'tf submit'也會提示而不提示。

  • 開箱即用的有限功能。很明顯,他們想製作更豐富的PowerShell IDE,但沒有。

2

事後的方式,但事情有所改善。 ConEmu是高度可配置的,並且可以水平和垂直調整大小。它在調整窗口大小時調整字體的大小有點奇怪(對我來說)。有一些關於它的討論here。 Scott Hanselman擁有written about it,包括與FarManager的整合。

相關問題