我有大量的命令行实用程序,我在日常开发中使用(例如Maven,ant,Grizzly,mplayer,CASE工具等)。我用的是Windows。每次我想启动一个新进程时,我最终都要创建一个新的cmd.exe进程并输入我想要运行的内容。有时,我一次打开五个cmd.exe!它变得越来越难以管理。
有没有办法在emacs中直接执行此操作?这就是我想要的:
- 有几个cmd.exe的输出存储在emacs中(可能是每个的新缓冲区)
- 能够将stdin和ctrl-c发送到进程
- 轻松地重新启动命令而无需重新输入整个命令(例如按下cmd.exe中的向上箭头)
- 能够将某些参数粘贴到要运行的命令(例如-file = C:\ my \ directory \ my.file)
- 能够将输出复制到剪贴板。理想情况下,不像cmd.exe那样在40列左右打破。
这听起来像emacs中的一个可行的任务,但我不知道如何做到这一点。我希望能够在远程Linux机器上使用ssh并做类似的事情。
也许还有另一个比emacs更明显的解决方案。如果是的话,请赐教。
编辑:我注意到emacs有一个eshell命令。如果我能够同时在多个缓冲区上工作,我认为我的需求会得到满足。