有没有人找到Windows(如bash)与OS X一样好的shell终端?


14

我主要使用Windows上安装的Git vcs附带的“ git-bash”。我认为Cygwin附带的是同一个。从技术上讲它可以正常工作,但是UI很烂:

  • 必须右键单击标题栏,然后转到“属性”以更改窗口宽度
  • 最烦人的是...用鼠标复制粘贴并突出显示同样麻烦

相比之下,OS X附带的Terminal应用程序可以轻松管理这些内容,因此使用起来更加舒适。您甚至可以在其上拖放文件,它将文件路径粘贴到您的光标处!

我也尝试过:

  • http://sourceforge.net/projects/win-bash
  • http://www.steve.org.uk/Software/bash/
  • http://www.hamiltonlabs.com/cshell.htm

在没有繁琐的右键单击的情况下,这些方法都不会复制和粘贴文本。

我正在Windows中专门寻找Unix风格的外壳,因此在家庭开发人员(Windows),实时服务器(Linux)或办公室开发人员(Mac)之间不必使用不同的外壳。

是的,我已经用Google搜索,但还没有找到...


3
对于Windows中的任何控制台,包括cygwin bash,您都可以启用快速编辑,它比默认行为要好。由于您没有描述您发现的麻烦,所以我不知道您是否尝试过。
mfinni 2011年

实际上,我认为Git-Bash是从MinGW而不是Cygwin本身在MSYS上运行的……尽管如此,仅将它们分别安装后,Cygwin附带的shell应用程序似乎与MSYS中的外壳应用程序相同,这与Git附带的一个。
Anentropic 2011年

@mfinni谢谢,我没有尝试过“快速编辑”模式。但是,它仍然很笨拙,您无法像普通程序一样轻松地进行复制和粘贴...
Anentropic 2011年

QuckEdit与PuTTY / X的复制/粘贴非常接近:突出显示文本,然后按Enter键进行复制,然后单击鼠标右键进行粘贴。
DerfK'1

您应该意识到(我无法确定是否),终端和外壳是不同的,并且在很大程度上彼此独立。
暂停,直到另行通知。

Answers:


10

您是否尝试过console2

它使您可以使用cmd,bash或任何程序作为shell,并允许在任何方向进行大小调整。

您可以通过以下方法将其默认设置为Git Bash:转到“编辑”->“设置”,然后将其粘贴到“外壳”字段中:

"C:\Program Files\Git\bin\sh.exe" --login -i"

要复制,请按住Shift键,然后单击鼠标左键并拖动以进行选择,然后单击鼠标左键进行复制。

最后,Git附带了rxvt。您可以创建一个新的Windows快捷方式,并将“目标”字段设置为:

"C:\Program Files\Git\bin\rxvt.exe" -e /bin/sh --login -i

很棒的技巧-我曾经尝试过Console2,但不知道我可以更改底层shell!
Anentropic 2011年

1
@Mikel,您尝试过ConEmu吗?
Maximus 2012年

ConEmu是Console2的值得继承者,并且是一个很大的改进。
Charles Roper 2012年

6

[根据Anentropic的要求,将我的评论重新发布为答案。]

如果您使用Cygwin并喜欢PuTTY,请查看mintty。在Cygwin安装程序的“外壳”类别中可用(或在此处获取源代码)。作者使用PuTTY的大部分内容来创建它,因此它的行为非常类似于PuTTY。可以将其配置为像您希望的那样工作:

  • 像其他Windows应用程序一样,只需拖动边缘或角落即可调整窗口大小。这将通过添加或删除行和/或列来调整终端的大小,就像您对xterm之类的期望一样。
  • 可以将复制/粘贴配置为单击操作(例如,单击鼠标左键以突出显示和自动复制,单击鼠标右键以扩展,单击鼠标中键以粘贴)。
  • 与OS X Terminal一样,将文件或文件夹拖动到薄荷窗口中会将完整路径粘贴到光标位置。
  • 所有Windows驱动器都是可用的,默认情况下在/ cygdrive下“挂载”(尽管我通常使用更改为/ mnt mount -c /mnt)。

我对薄荷的唯一问题是,最新版本(0.9.4+)似乎正在执行Windows 7 UAC不喜欢的操作,因此它会提示您每次运行它的权限。这似乎导致它以不同的特权运行,因此诸如我的网络驱动器之类的东西无法正常工作。但是,我不知道这是一个薄荷问题还是系统问题。


我在Windows 7下没有此问题,因此很可能是系统问题。我第二次使用Mintty,它还支持所有这些不错的新Windows快捷方式来移动窗口(Windows键+箭头)
Renik 2011年

太好了-您知道是否可以指向它使用Git附带的外壳程序(例如@Mikel的Console2技巧)吗?
Anentropic 2011年

默认情况下,minty将调用$SHELL环境变量指向的任何内容。但是,您可以改为在命令行上将另一个程序指定为第一个参数,这在快捷方式中很有用。作者汇总了一些不错的技巧列表(code.google.com/p/mintty/wiki/Tips),这些技巧说明了如何执行此操作。
James Sneeringer

2

对不起,我是另一个控制台模拟器的作者。

ConEmu是带有选项卡的Windows控制台仿真器,它作为一个具有各种功能的可自定义GUI窗口,显示了多个控制台和简单的GUI应用程序。

一长串选项的简短摘录:

  • 平滑调整大小,最大化和全屏窗口模式
  • 用户友好的文本和块选择(通过键盘或鼠标),复制,粘贴,在控制台中搜索文本
  • 以管理员(Vista +)或选定用户身份运行选定的选项卡
  • 在网格/分屏中运行多个Shell(最新开发版本)
  • 使用系统中安装的任何字体,或复制到程序的文件夹中的任何字体(ttf,otf,fon,bdf)
  • Windows 7跳转列表和任务栏上的进度
  • DosBox集成(在64位系统中用于运行DOS应用程序)
  • 滚动条最初处于隐藏状态,可以通过鼠标悬停或设置中的复选框来显示
  • 所选应用程序的可选设置(例如调色板)
  • ANSI X3.64和Xterm 256色

superuser.com上的Hanselman帖子,用户评论,ConEmu 标签


看起来不错,波斯王子(Prince Of Persia)屏幕截图+1 :)
Anentropic

抗锯齿字体会更好
Anentropic 2012年

它具有3种抗锯齿选项:无,标准和ClearType。
Charles Roper 2012年

0

我希望PuTTY能够像Cygwin一样充当本地操作系统访问的仿真器。当我卡在Windows盒子上时,腻子是我的最爱。我对这个问题投了赞成票,我也想知道一个针对Windows的更好的模拟器。


1
腻子是终端程序,而不是外壳。即使您可以使用腻子连接到本地Windows盒(如果正在运行SSH守护程序,也可以使用它),则实际的shell仍然是您通过SSH登录时正在运行的shell。
mfinni 2011年

我不是说它是外壳,而是说我希望它像模拟器一样工作。我喜欢油灰的GUI,这就是我的观点。
c1tadel1 2011年

3
如果您使用Cygwin并喜欢PuTTY,请查看mintty。可在Cygwin安装程序的“外壳”类别中找到它(或在code.google.com/p/mintty中查看源代码)。作者使用PuTTY的大部分内容来创建它,因此它的行为非常类似于PuTTY。
James Sneeringer

@James您想发表您的薄荷味建议吗?看起来很有希望!我似乎被困在Cygwin虚拟unix文件系统中,我无法像在git-bash中那样浏览Windows文件?
Anentropic 2011年

0

复制和粘贴的最大问题不是终端仿真器的问题。这是自己的绑定键。

在Mac中发明快捷键后,Apple为它们添加了一个新键:“命令键”(也称为“ splat”),它没有ASCII等效项。

几年后,当Microsoft复制相同的快捷方式时,PC键盘没有任何“窗口”或“菜单”键,因此它们带有另一个可以用小指按住的小用键:Ctrl键。问题是Ctrl-C,Ctrl-V等是有效的ASCII代码,并且在命令行界面上大量使用。

因此,当您在Windows三进制上按Ctrl-C时,它应该复制文本还是中断正在运行的命令?


那是一个好点,我还没有意识到OS X在那里具有幸运的优势。尽管如此,这仍然是一个UI问题,当前Windows的终端应用程序尚未真正尝试解决。
Anentropic 2011年

0

就像我接触过的几乎所有Windows软件一样,我不得不重复使用不确定性和暴力手段的步骤...

但是在那里,我无需安装任何新控制台就可以正常工作!

我遵循了AnandK的解决方案... http://www.thewindowsclub.com/full-screen-command-prompt-in-windows-7 通过执行以下操作,我将其与git bash结合使用

  • 打开一个常规cmd,
  • 执行wmic
  • 调整大小(双击窗口栏)
  • 关闭cmd
  • 打开git bash
  • 调整大小(无效...)
  • 调整大小

我想我应该澄清一下:这是专门用于允许全屏显示-仅此而已。


0

只是把它扔出去,因为还没有被提及。但是MS自己的PowerShell实际上是Windows的非常好的CLI。

它具有一些类似于Bash的功能,应该会让您感到有些熟悉。我认为,即使您主要是* nix家伙(例如我自己),也可以使用Windows进行任何类型的脚本编写或自动化,这值得我们学习。与尝试将运行在Cygwin上的东西合在一起相比,您将可以在更短的时间内完成更多工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.