BBS水木清华站∶精华区
如何在 Emacs 中执行 Shell 的指令
在 EMACS 中有两种执行 shell 指令的方法:一种是进入shell command mode,
另一种是进入 shell mode。二者都可以执行 shell 的指令,
其最大不同之处是,进入 shell mode 的状态,执行 shell 指令
的同时,仍可以切换到其它模式处理别的工作,但如果使用
shell command mode,就必须等指令执行完後才可以做
其它的事。
使用 shell command mode 时,使用者在萤幕的最下方
输入欲执行的指令, EMACS 会开启一个名为 ``*Shell command output*''
的视窗,将 shell 指令执行的结果显示在此视窗中.shell mode
则是执行一个 subshell,其输入与输出都是透过同一个缓冲区,
所以输入与输出是在同一个地方,它不似 shell command mode,
指令输入与结果的显示在不同的地方。
shell command mode 又可以有两种模式,一种
就是很单纯的执行一个 shell 的指令;另一种是对某一特定区域
的资料执行 shell 的指令。 shell command mode 容许
执行後的结果,直接输入到目前所使用的工作区内。有了如此的功能,
使用者可以很轻易的将 shell 指令执行的结果,直接放入适当的
位置,而不需另外从事剪贴的工作。
要如何使用 EMACS 所提供的 shell 功能呢?以下是最基本
的方法,至於高阶的用法则请自行参考 GNU EMACS所提供的
``GNU Emacs Manual'' 。
1. shell command mode
o ESC-!(shell-command)唤起 shell command mode。
o ESC- (shell-command-on-region)
针对某一特定区域执行shell command mode 的 shell 指令。
(特定区域,是指缓冲区的某一□围(region)而言,所以此指令只是
针对缓冲区的某一部分运作的资料,)
o Ctrl-u ESC-! 与 Ctrl-u ESC-
在 ESC 前加上 Ctrl-u ,可以将 shell 指令执行的结果,输出到
游标所在的位置。
2. shell mode
ESC-x shell\indexESC-x shell 是唤起 shell mode的指令。
BBS水木清华站∶精华区