emacs中打开多个shell

在emacs中使用shell有它的好处,那就是可以使用emacs命令来操作shell的输出,也可以利用emacs 命令来对shell命令的键入进行处理。进入shell模式的方式是 M-x shell , 使用这个命令就可以 进入shell模式,但是每次你键入这个命令都会进入同一个shell,如何打开多个shell呢?

在使用上面的命令打开shell的时候,shell所在buffer的名字是 *shell* , 每次你键入上面的命 令都会切换到这个buffer , 你可以使用 M-x rename-buffer 来为这个buffer起个新名字。比如 shell-debug , 这样再使用 M-x shell 的时候就会新开一个shell。以这种方式,你可以开任意 多个shell。

在多个shell之间切换的时候,可以使用 C-x b 显示buffer列表,然后选择需要的shell。

这个模式下有几个有用的命令如下:

表1  shell模式下的常用命令
C-c C-o 隐藏上一个命令的输入,有时候一个命令的输出相当长,这个命令可以把输出藏起来
C-c C-r 跳到上一输出的开始出,对于长的输出,这个也很有用
C-c C-e 同上,跳到上一输出的结束处
C-c C-p 跳到前一输出
C-c C-n 跳到后一输出
M-p 上一条shell命令
M-n 下一条shell命令

另外,如果要指定缺省的shell ,可以设置变量 shell-file-name , 如下所示:

(setq shell-file-name "/bin/zsh")


本文地址: http://www.bagualu.net/wordpress/archives/6578 转载请注明




发表评论

电子邮件地址不会被公开。 必填项已用*标注