跳脫符號 "\"
ex /\.tw 搜尋 ".tw"
全部搜尋後取代
:%s/key_words/target_to/g
ref :https://www.opencli.com/linux/vi-vim-search-and-replace-string
不管系統管理還是寫程式,在檔案內對字串進行搜尋並取代十分常用,在 Unix Like 環境下常會用 sed 或 perl 做 search & replace.
如果在開啟檔案後需要取代字串,其實在 vi 及 vim 內同樣可以做搜查及取代字串,做法跟 sed 差不多,以下是 vi 做搜尋及取代的語法:
:%s/search_from/replace_to/g
以上 vi 的語法會將檔案內,所有 “search_from” 的字串替換成 “replace_to”。
將上面指令最後加上一個 “c” 字元,可以在取代前,向使用者確認:
:%s/search_from/replace_to/gc
除了可以替換輸入的字串,更可以設定搜尋時,略過英文大小寫的差異,以下對 “search_from” 及 “SEARCH_FROM” 同樣匹配:
:%s/search_from/replace_to/gi
如果不想將檔案內所有匹配的字串取代,而是只將目前一行的字串取代,可以將指令最前面的 “%” 刪除取可:
:s/search_from/replace_to/g
如果只要取代指定行數範圍的字串,可以用以下格式,例如要搜尋並取代第 50 行至 100 行匹配的字串,可以這樣:
:50,100s/search_from/replace_to/gc
開TAB
:tabe "exist_file.txt" 開啟已經存在的檔案
:tabe newfile.txt 建立一個 名為newfile.txt 之檔案
TAB 之間跳換 gt
ref :
http://silverwind1982.pixnet.net/blog/post/346179083-vim-%E6%8C%87%E4%BB%A4
http://www.vixual.net/blog/archives/234
vim 垂直編輯
在normal模式下按 ctrl+v 进入列编辑模式
通过 hjkl 选中编辑的区域.
shift+i 或者 shift+a.
输入要插入的内容.
ctrl+\[ 或 esc.
http://bioankeyang.blogspot.com/2014/12/vim.html
vim 全選複製
: ggyG
:gg
全选(高亮显示):按esc后,然后ggvG或者ggVG
全部复制:按esc后,然后ggyG
全部删除:按esc后,然后dG
解析:
gg:是让光标移到首行,在vim才有效,vi中无效
v : 是进入Visual(可视)模式
G :光标移到最后一行
选中内容以后就可以其他的操作了,比如:
d 删除选中内容
y 复制选中内容到0号寄存器
"+y 复制选中内容到+寄存器,也就是系统的剪贴板,供其他程序用
ref :https://www.cnblogs.com/webStyle/p/4354464.html
最後附上
VIM 使用手冊
http://vimdoc.sourceforge.net/htmldoc/usr_toc.html
沒有留言:
張貼留言