我始終運行的Emacs的程序,但是當我想要做的東西都有沒有辦法用emacsclient(用戶)打開文件,但有root權限?
sudo emacsclient /etc/make.conf
因爲root使用另一個Emacs的,我不能做到這一點,我真的不希望運行2個守護進程或等待通常的emacs加載簡單文件。
我需要一些解決方案,如emacsclientsudo /etc/make.conf
:)用用戶emacs客戶端編輯系統文件。
我始終運行的Emacs的程序,但是當我想要做的東西都有沒有辦法用emacsclient(用戶)打開文件,但有root權限?
sudo emacsclient /etc/make.conf
因爲root使用另一個Emacs的,我不能做到這一點,我真的不希望運行2個守護進程或等待通常的emacs加載簡單文件。
我需要一些解決方案,如emacsclientsudo /etc/make.conf
:)用用戶emacs客戶端編輯系統文件。
添加到您的~/.profile
:
alias E="SUDO_EDITOR=\"emacsclient\" sudo -e"
然後
E /etc/hosts
你應該能夠使用sudoedit
,而不是sudo -e
,但我找不到 我的Mac前者。
我不知道這件事直接但這裏有一個竅門
emacsclient -e '(find-file "/sudo::/etc/passwd")'
使用流浪漢和sudo的方法來打開/etc/passwd
爲根。
您可以將它別名並直接在您的shell中使用它。
問題不明確,Emacs服務器是否以root身份運行。另一個答案假定服務器以root身份運行。你的答案假定服務器運行非特權。 – ceving 2018-02-21 13:31:33
我的答案適用於任何一種方式。 – 2018-02-21 19:34:17
整潔。我想你可以在你的init腳本中設置SUDO_EDITOR,然後直接調用'sudo -e'或'sudoedit'作爲你想要的任何文件。 – 2012-04-17 13:27:52