Windowsterminal(像cmd.exe这样的文本应用程序的用户界面)真的很糟糕。
Unix风格的terminal是如此之多,以至于windowsterminal显然无法做到这一点,例如,如果你想通过拖拽边界来重新调整窗口的大小, Windowsterminal只允许你改变它的长度。
剪切和粘贴,在Linux或Unix,没有问题 – select框很好地包装,所以你可以削减多行expression式。 Windowsterminal(即使在快速编辑模式下)强制一个奇怪的矩形select框,这是没有实际用途 – 你必须重新格式化所有复制到记事本!
如果我进入“编辑”模式,任何时候都会阻止应用程序 – 我确定有人希望能够在不停止关键业务服务器的情况下进行剪切和粘贴。
我敢肯定,如果我们放心,我们可以思考更多的错误 – 但不要发牢骚。我们可以做些什么来使这个更好?
更新:只是为了澄清,我不想replacecmd.exe – Powershell和CygWin都提供更好的select。 我试图更换控制台应用程序,即围绕Windows中所有文本应用程序的GUI。
我个人使用与MYSYS-Git一起运行的Bash的Console2 。
你也可以使用PuTTY和SSH到一个真正的Linux的盒子;-)
使用控制台2 ,也许? 它现在非常稳定,并且允许你很容易地在cmd / PowerShell / cygwin /任何其他shell之间切换。 如果我们诚实地说,微软很可能不会很快改进原生的Win32控制台。
我发现这个问题的唯一“解决方案”是安装Cygwin / X,而不是使用XTerm。 我每天都在工作中使用它。
有两件事情可以独立更改 – 终端仿真器和外壳。
这将允许您正常选择文本(而不是愚蠢的矩形)。 我喜欢Console2,这是快速,轻量级和可靠的http://sourceforge.net/projects/console/
还有ConEmu https://code.google.com/p/conemu-maximus5/ 。
还有Mintty https://code.google.com/p/mintty/ (与Putty使用相同的终端模拟器)。 Mintty不能运行像nano
或vi
这样的交互式应用程序。 Mintty也不能运行cmd
,只有Bash。
无论您选择什么,将“在此打开控制台”项添加到Windows资源管理器上下文菜单中都是非常有用的。 说明在https://stackoverflow.com/a/17663556/284795
Clink改进了cmd
,添加了会话历史和Bash式的自动完成。 https://code.google.com/p/clink/
Bash for Windows最可靠的发行版是MSysGit。 安装非常简单,你可以免费获得Git https://code.google.com/p/msysgit/
现在解释MSys和Cygwin之间的区别是值得的。 MSys是一个精心移植到本地win32 API的应用程序集合,而Cygwin是一个可以运行任意Linux应用程序的模拟层。
根据我的经验,MSys更舒适,它与Windows更好地互操作(特别是它如何处理路径)。 虽然Cygwin有更多的应用程序,更近的。
我发现iPython在-s模式下尽可能的接近。 它也兼作python交互式shell。
我所做的所有Windows机器中的第一件事就是安装Cygwin
Cygwin也有一些扩展,比如ssh等。
不是一个直接的答案,但是因为偶尔你必须在Windows CMD窗口中工作,所以有两个设置是绝对必要的,以使它可以被接受。
我在一台新电脑上做的第一件事情就是将屏幕缓冲大小设置为9999(高度),300(或母猪宽度)。 这使您可以左右滚动,使您心中愉悦,并为您提供检查日志的重要缓冲区。 不要设置窗口大小,它几乎是无用的。
我做的另一件事是检查“快速编辑”模式,这使得复制/过去更容易,你可以通过点击/拖动快速暂停滚动屏幕(开始选择)。
这不完全是一个解决问题的办法,只是相关的建议,可能是有用的解决他提到的具体问题以不同的方式(和一个非常有用的习惯!)。
而不是试图强制在Windows上的Unix行为 – 这有点不自然 – 为什么不检查PowerShell ,微软的Windows下一代壳?
我没有试过在Windows上的KDE ,但据说现在可以在最新版本的写作。
要改变cmd提示的大小,你可以改变窗口的大小,只改变窗口本身的大小,或者/你可以改变缓冲区大小,这将调整大小…如何描述它,记住的行数。 要访问属性工具箱,请右键单击标题栏和属性。
另外,如果你想从cmd提示中快速复制东西,在属性窗口中启用“快速编辑”框 – 它可以让你选择的东西,并用右键单击“复制”。
在Cygwin中有一个rxvt的本地windows版本。 它似乎工作得很好,可以轻松调整大小,例如全屏。
我在Windows上使用JTerm桌面控制台。 它具有所有主要的Linux / Unix命令的Java实现,比如我们的ls,grep,find,cd,cp,mv等等。它有一些限制,但是总的来说它会工作的。
如果你想要一个CYGWIN的替代品
npm install -g cash-global
有一个关于The Cash Shell
写得很好的博客 。
你也可以在这里查看npm
包。
希望这可以帮助。
我认为你在寻找Powershell,我可以争辩是更强大的Linux bash或至少有相同数量的权力。