《SUSE Linux中儲存狀態信息的viminfo和vimrc詳解》要點:
本文介紹了SUSE Linux中儲存狀態信息的viminfo和vimrc詳解,希望對您有用。如果有疑問,可以聯系我們。
最近公司在審計所有產品和方案的安全規格,比如:操作系統的日志中禁止包含密碼明文或password之類的.幾乎將系統安全武裝到牙齒了,今天就遇到一個問題:測試發現SUSE Linux操作系統的/root/.viminfo文件中包含了password字樣,和同事確認后了解到:原來.viminfo文件存放于Linux系統的用戶HOME目錄(家目錄)下,會記錄該用戶執行vi或vim的歷史記錄.
如果為了安全或某些原因,不希望其他用戶查看到這些vi/vim操作記錄,那么可以通過以下方法關閉.viminfo的記錄:
1. 關閉所有用戶的viminfo記錄——修改/etc/vimrc文件,在該文件最后一行中增加set viminfo=
2. 關閉指定用戶的viminfo記錄——修改該用戶HOME目錄下的.vimrc文件,在該文件最后一行中增加set viminfo=
同時在網上搜集整理了下關于viminfo的詳細說明,在這里也匯總分享下……
1. 信息文件viminfo被設計為儲存Linux以下狀態信息:
命令行和模式搜索的歷史記錄
寄存器內文本
各種文件的標記
緩存器列表
全局變量
2. 你每次退出 vi/vim,它就把此種信息存放在一個文件內,即.viminfo
當vi/vim重新起動時,就讀取這個信息文件, 而那些信息就被還原了.
3. vimrc文件中的選項‘viminfo’的默認設定是還原有限的幾種信息,你也許希望設定它記住更多的信息:
其設置的規則大致如下:
set viminfo=string
其中字符串 “string” 規定了什么要儲存.
該字符串的語法為一個選項字符跟一個參數,選項和參數組成的對子之間由逗號分隔.
來看一下你可以怎樣構建你自己的 viminfo 字符串.首先,選項 ‘ 用于規定你為多少個文件保存標記 (a-z).為此選項挑一個美妙的偶數 (比如 1000).
你的命令現在看起來像這樣:
set viminfo=’1000
選項 f 控制是否要儲存全局標記 (A-Z 和 0-9).如果這個選項設為0,那么什么也不存儲.如果設為1,或你對f選項不作規定,那么標記就被存儲.你要這個功能,現在你有了:
set viminfo=’1000,f1
選項 < 控制著每個寄存器內保存幾行文本.默認情況下,所有的文本行都被保存.如果設為0,則什么也不保存.為了避免成千上萬行文本被加入你的信息文件 (那些文本可能永遠也沒用,徒然使vi/vim 起動得更慢),你采用500行的上限,那么以上的幾個規則最終設置就如下了: set viminfo='1000,f1,<500 另外,如果要深入研究,那么下面這些選項可以幫到你: : 保存命令行歷史記錄內的行數 @ 保存輸入行歷史記錄內的行數 / 保存搜索歷史記錄內的行數 r 可移介質,其中沒有任何標記存入 (可用多次) ! 以大寫字母開頭的全局變數,并且不含有小寫字母 h 起動時解除選項 'hlsearch' 的高亮度顯示 % 緩沖列表 (只有當不帶參數起動 Vim 時才還原) c 用編碼 'encoding' 轉換文本 n 用于 viminfo 文件的名稱 (必須為最后一項選項)
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/4710.html