当前位置:  开发笔记 > 运维 > 正文

在Emacs中使用su/sudo打开一个文件

如何解决《在Emacs中使用su/sudo打开一个文件》经验,为你挑选了5个好方法。

假设我想使用su或在现有的Emacs会话中打开一个文件sudo,而不是直接转到shell并执行sudoeditsudo emacs.一种方法是

C-x C-f /sudo::/path/to/file

但这需要通过SSH进行昂贵的往返.有更直接的方式吗?

[编辑] @JBB是对的.我希望能够调用su/ sudo保存以及打开.在保存时重新授权是可以的(但不是理想的).我正在寻找的是变化find-file,并save-buffer认为可能是"管道"通过su/ sudo.



1> EfForEffort..:

Tramp的优点在于,当您打开第一个文件时,您只需为SSH的往返付费.然后Sudo缓存您的凭据,Emacs保存一个句柄,以便后续的sudo打开的文件花费更少的时间.

我还没有找到节省负担所需的额外时间.它足够快,IMO.


Tramp不会**通过SSH往返,它使用*subshel​​l*.
等一下......缓存有多久会过期?

2> Teddy..:

流浪汉确实不是往返须藤通过SSH,它使用一个子shell.请参阅手册:https://www.gnu.org/software/tramp/#Inline-methods

因此,我建议您坚持使用TRAMP.



3> Qudit..:

如果使用helm,helm-find-files支持以root身份打开文件C-c r.



4> Burton Samog..:

这不是原始问题的答案,但是这里有一个辅助函数可以使tramp/sudo路径更容易:

(defun sudo-find-file (file-name)
  "Like find file, but opens the file as root."
  (interactive "FSudo Find File: ")
  (let ((tramp-file-name (concat "/sudo::" (expand-file-name file-name))))
    (find-file tramp-file-name)))



5> huitseeker..:

至少为了节省,一个sudo-save包就是针对那种问题编写的.

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有