Re: [vim ] 新手入門再次請問一下?
看板Editor (編輯器(vim/emacs))作者darkgerm (黑駿)時間11年前 (2013/05/24 03:43)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/3 (看更多)
想回的東西有點多~ 用回文好了
$ sudo vim
這樣是以 root 的身份執行 vim,所以讀的是 root 的設定檔
但若以系統管理的角度來看,有執行 vim 的權限就相當於有 root shell
怎麼說?在 vim 裡可以用 :sh 進到 shell XD
也就是說,如果今天是用 sudo vim 執行 vim,我可以透過 :sh 來得到 root shell
因此,在多人管理的系統中,除非是本來就有 root 權限的管理者
不然一般維護人員是不可以 sudo vim 的
另一方面,sudo vim 讀的是 root 的設定檔
於是需要複製一份而且更新時要同步更新... (好啦,這其實可以用 link 做到)
但如果是多人管理的系統,你不能要求其他人都用你的設定檔吧XD
那如果要修改 root 檔案內容怎麼辦?
1. 使用 sudoedit,基本上 sudoedit 就是為了解決這個問題而生的
2. :w !sudo tee % 這行指令的意思是:
w(存檔) 存到哪?
!(執行外部指令) 把檔案內容 pipe 給外部指令
sudo tee % "%"表示檔名,用 tee 接收輸入並存到同樣的位置去
加上 sudo 表示以 root 執行 tee,如此一來才能動到檔案。
我個人是使用第二個方法
因為我常常用 vim 看檔案,看一看發現要改就直接改下去
然後要存檔時才發現沒有用 sudo/sudoedit orz...
這時候用第二個方法就可以避免再重寫一次
※ 引述《noggi (阿部)》之銘言:
: 各位好,在下是vim入門新手…
: 前幾天透過版上先進教導才開始懂得C-x C-o
: 不過目前在下又遇到了一個疑問:
: 前幾天將家中的web server搬到Amazon Web Service EC2
: 使用系統為AMI(Fedora)
: 在下sftp連上後先將自己電腦裡家目錄底下的 .vimrc 和 .vim/ 傳上去遠端AMI的家目錄下
: 當然就買上來試試,ssh先連上。
: ~$ vim test.php
: 嗯很好!設定的效果都與自己電腦上使用的都一樣!
: 正當高興時,要來去cd /var/www/html/下寫個hello world的index.php
: ~$ sudo vim index.php
: 嗯很好!設定的效果都不見了,好像是預設的樣子!
: 所以我遇到的問題是:當我用sudo vim時,vim 所讀的.vimrc是不同於家目錄底下的那個嗎?
: 我該如何處理?
: 不知我形容的好不好,因為我連google搜尋都不太知道該怎麼設定關鍵字搜?
: 最後,感謝各位讀完!
--
光明 的背後 是 黑暗
黑暗 的背後 還是 黑暗
由此可知 黑暗 > 光明 Q.E.D.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.230.123
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
Editor 近期熱門文章
PTT數位生活區 即時熱門文章