Emacs:编辑没有stream行的根文件

下面是在非root用户运行emacs中打开root文件的方法:

erf () { SUDO_EDITOR="emacsclient -n -a emacs" sudoedit $@; } ;; erf = Emacs Root Foreground 

它会询问一个root密码,一旦你input密码,它会在/tmp打开一个文件的副本。 例:

 $ cd /etc/apt $ erf sources.list 

打开: sourcesXXiOSmYN.list 。 所以我编辑的东西,并保存与Cx Cs – 但它没有保存:

 $ sudoedit: sources.list unchanged 

我如何让它保存的东西? (function将非常整洁)

编辑

  erf () { SUDO_EDITOR="emacsclient -a emacs" sudoedit $@; } ;; erf = Emacs Root Foreground 

解决它。 保存一个文件,并杀死缓冲区或Cx # 。 有用。

删除-n选项。 我使用FWIW,

 alias E="SUDO_EDITOR=\"emacsclient -c -a emacs\" sudoedit" 

采取某处…

我不使用emacs,但有什么问题

 export EDITOR=emacs # or export VISUAL=emacs sudoedit some-root-file 

? 将输出行放在.bashrc中,就完成了。