初识VIM
目 錄
第1章 文件操作????1
1.1 VIM基本介紹????1
1.2 VIM模式介紹????1
1.3 VIM命令模式????3
1.4 VIM編輯模式????3
1.5 VIM末行模式????3
1.6 VIM視圖模式????3
1.7 VIM環境變量????4
1.8 VIM擴展知識????4
1.9 VIM練習????4
第2章 目錄操作????4
?
文件操作
Linux系統VIM編輯
VIM基本介紹
vim概述
vi和vim命令是linux中強大的文本編輯器,由于Linux系統一切皆文件,編輯文件是必不可少的工作,而vim有著強大的文本編輯功能。
vi和vim有什么區別?
1、vi不下時語法高亮
????2、vim顯示語法顏色高亮
????3、其他功能沒有什么不同
????4、所以在Linux系統中,使用vi還是vim取決于個人習慣
安裝vim
這里我已經安裝過了 鍵入命令 yum install -y vim 安裝vim
[root@oldboy ~]# yum install -y vim
已加載插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
軟件包 2:vim-enhanced-7.4.160-4.el7.x86_64 已安裝并且是最新版本無須任何處理
????????
?
VIM模式介紹
vim編輯器中設置了三種模式
VIM模式之間的切換
i、I、a、A、o、O
2、輸入模式———》命令模式
????ESC鍵就可以切換到命令模式
3、命令模式———》末行模式
:
ESC鍵????
VIM命令模式
移動
1、kjhl:上下左右
????2、G:光標跳轉到末端
????3、gg:光標跳轉到頂端
????4、ngg:指定行號跳轉;
????????例如:3gg:表示光標移動到第三行
????5、$/end:跳轉到當前行末
????6、^/home:跳轉到當前行首
????7、Ctrl+b/pgup:向上翻一頁
????8、Ctrl+f/pgdo:向下翻一頁
輸入模式
????1、a:在光標的下一個字符插入
????2、A:直接將光標移動到行末插入
????3、i:再光標處插入字符
????4、I:在行首插入字符
????5、o:再下一行插入字符
復制
????1、yy:復制當前行
????2、5yy:復制當前行和一下4行
粘貼
????1、p:下一行粘貼
刪除
????1、dd:刪除當前光標所在的行
????2、4dd:刪除往前行和以下3行
????3、dG:刪除當前行以后的所有行
????4、D:刪除當前行內光標后的所有內容
????5、x:刪除光標所在的字符
????6、X:刪除當前所在行光標前面的一個字符
????7、shift+::進入末行模式
撤銷
替換
VIM編輯模式
????1、a:在光標的下一個字符插入
????2、A:直接將光標移動到行末插入
????3、i:再光標處插入字符
????4、I:在行首插入字符
????5、o:再下一行插入字符
?
VIM末行模式
查找 /string 需要搜索的內容(查找) ***
????1、n 按搜索到的內容依次往下進行查找
????2、N 按搜索到的內容依次往上進行查找
????替換 ***
????1、:s#sbin#test 替換光標所在行的第一個滿足條件的內容
????2、:s#sbin#test#g 替換光標所在行的所有滿足條件的內容
????3、????:m,nds#sbin#test#g 替換m-n行中包含sbin的內容為test-5行中包含sbin的內容為test
????4、????:%s#sbin#test#g 替換整個文本文件中包含sbin的替換為test
????5、????:%s#sbin#test#gc 替換內容時時提示是否需要替換
????6、:%s#sbin##ng????查詢全文中sbin的數量
????另存
????1、:w /root/test 將文件所有內容另存為/root/test
????讀入
????1、:r /etc/hosts 讀入/etc/hosts文件至當前光標下面
????2、:5r /etc/hosts 指定/etc/hosts文件當前文件的哪行下面
打開新文件
????1、:e /etc/hosts 新打開一個文件
VIM視圖模式
進入視圖模式(從命令行模式進入視圖模式)
1、ctrl+v 進入VISUAL BLOCK 選中需要注釋的行(可視塊模式) ***
a.插入:按shift+i進入編輯模式,輸入#,結束按ESC鍵
b.刪除:選中內容后,按x或者d鍵刪除
c.替換:選中需要替換的內容, 按下r鍵,然后輸入替換后的內容
2、shift+v 進入VISUAL LINE 選中行內容(可視行模式) ***
a.復制:選中行內容后按y鍵及可復制。
b.刪除:選中行內容后按d鍵刪除。
VIM環境變量
環境變量(臨時生效)
????1、:set nu 顯示行號
????2、:set ic 忽略大小寫, 在搜索的時候有用
????3、:set ai 自動縮進
????4、:set list 顯示制表符(空行、tab鍵)
????5、:set no[nu|ic|ai…] 取消臨時設定的變量
環境變量(永久生效)
????1、~/.vimrc 個人環境變量(優先級高)
????2、/etc/vimrc 全局環境變量
VIM擴展知識
同時編輯多個文件
Ctrl+ww切換編輯兩個文件,需要退出兩次
1、vim -o file1 file2 水平分割
[root@oldboy ~]# vim -o 1.txt 2.txt
1111111
2222222
3333333
1.txt 1,1 全部
4444444
5555555
6666666
2、vim -O file1 file2 垂直分割
vimdiff相同文件之間差異對比
vimdiff 文件對比(用的不多)
vimdiff 以vim方式打開兩個文件對比,標記不同的內容
如果VIM非正常退出
如果VIM非正常退出掛起或強制退出終端沒關閉VIM后
//刪除同文件名的.swp文件即可解決
示例:.filename.swp rm -f .filename.swp
VIM練習
請把/etc/passwd 復制到/tmp/目錄下,并重命名為test.txt
用vim打開test.txt并設置行號
分別向下、向右、向左、向右移動5個字符
分別向下、向上翻兩頁
把光標移動到第10行
讓光標移動到行末,再移動到行首
移動到test.txt文件的最后一行
移動到文件的首行
搜索文件中出現的 root 并數一下一共出現多少個,不區分大小寫搜索
把從第一行到第三行出現的root 替換成student
還原上一步操作
把整個文件中所有的root替換成student
把光標移動到20行,刪除本行
還原上一步操作
刪除第19行
還原上一步操作
刪除從5行到10行的所有內容
還原上一步操作
復制2行并粘貼到11行下面
還原上一步操作(按兩次u)
復制從11行到15行的內容并粘貼到8行上面
還原上一步操作(按兩次u)
把13行到18行的內容移動文件的尾部
還原上一步操作(按兩次u)
光標移動到首行,把/sbin/nologin改成/bin/bash
在第一行下面插入新的一行,并輸入"# Hello!"
保存文檔并退出
轉載于:https://www.cnblogs.com/majinhai/p/9534061.html
總結
- 上一篇: Yuan先生的博客网址
- 下一篇: IDEA----破解