通常模式:能够进行复制,删除等操做linux
编辑模式:就是按 “i” 或者 “a” ,就是正常的编辑文档了。面试
命令模式:能够进行搜索关键词,和查找替换等操做,或者保存退出,强制退出等shell
而后把这个文件cp到/tmp/下,而后再vim看下:编程
[root@localhost ~]# cp /etc/passwd /tmp/ [root@localhost ~]# vim /tmp/passwd
能够看到虽然变化不大,可是也是有颜色显示了。vim
颜色又以另外一种方式显示了。浏览器
方向键的移动也是能够添加数字的,好比5h ,就是从当前光标出向左移动5格。3k就是从当前光标处向上移动三格。session
移动光标位置app
删除,复制,粘贴编辑器
":x" 和 ":wq" 的区别以下:测试
(1) :wq 强制性写入文件并退出(存盘并退出 write and quite)。即便文件没有被修改也强制写入,并更新文件的修改时间。
(2) :x 写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间;不然不会更新文件修改时间。 这二者通常状况下没什么不同,可是在编程方面,对编辑源文件可能会产生重要影响。由于文件即便没有修改,":wq" 强制更新文件的修改时间,
这样会让 make 编译整个项目时觉得文件被修改过了,而后就得从新编译连接生成可执行文件。这可能会产生让人误解的后果,固然也产生了没必要要的系统资源花销。不过像是版本控制的软件通常首选仍是比较文件内容,修改时间通常不加以理会。
1,注释全部的行:ctrl+v j/k+ shift +i
2,查看光标当前的man手册 shift+k
3,d+f+字符
4,选中面积 v+t+字符
5,在vim里面删除光标后的全部字符 shift+d
6,删除当前光标上的单词 d+i+w
7,选中当前光标上的单词 v+i+w
:set noai nosi
:set paste
选项Terminal->Features里,找到Disable application keypad mode,选上就能够了
在xmanager 4 中的xshell也有小键盘问题 解决方法为
修改session 属性 -> 终端->VT模式->初始数字键盘模式
选择 设置为普通。
1、 利用 vim/vi 加密:
优势:加密后,若是不知道密码,就看不到明文,包括root用户也看不了;
缺点:很明显让别人知道加密了,容易让别人把加密的文件破坏掉,包括内容破坏和 删除;
vi编辑器相信你们都很熟悉了吧,vi里有一个命令是给文件加密的,举个例子吧:
1) 首先在root主目录/root/下创建一个实验文件text.txt:
[root@www ~]# vim/vi text.txt
2) 进到编辑模式,输入完内容后按ESC,而后输入:X(注意是大写的X),回车;
3) 这时系统提示让你输入密码,2次,以下所示:
输入密码: ******* 请再输入一次: *******
4) 保存后退出,如今这个文件已经加密了;
5) 用cat或more查看文件内容,显示为乱码;用 vim/vi 从新编辑这个文件,会提示输入密码,若是输入的密码不正确,一样会显示为乱码! 注意:文件加密后,千万别忘了密码!
1) 用 vim/vi 打开文件如text.txt,要输入正确的密码,而后在编辑时,将密码设置为空,方法是输入下面的命令:
:set key=
而后直接回车,保存文件后,文件已经解密了。
2) 或者这样也行:
在正确打开文件后用 “:X” 指令,而后给一个空密码也能够。保存用“wq!”保存。 两种方法实际上效果是同样的。
1.vim编辑器的替换模式与可视模式 在通常模式下按键盘上的r和R进入替换模式。若是按小r那么这时候就进入了替换模式,你下一个输入的字符会把你当前光标所在处的字符替换,而后自动退出替换模式。若是你按的是大R那么你下面输入的全部字符会把后面的字符依次替换,直到按退出替换模式。
在通常模式下按键盘上的v和V进入可视模式。若是是按小v那么这时候就时入了视图模式,这时候你移动光标会把你光标所在处到光标结尾处的全部字符选中,这时候能够进行复制,删除等操做。若是是按大V一样也是进入了视图模式,这时候移动光标会把光标所在行到光标结尾的行的全部内容选中,也能够进行复制,删除等操做。
注意:使用在通常模式使用“ctrl+v”组合键能够进入块操做模式 在这个模式下和可视模式差很少,可是选择的内容不一样,你们可实际操做看看 2.删除从光标所在处到行尾字符
在通常模式下输入大写“D”或者输入“d$”
3.删除从光标所在处到行首字符
在通常模式下输入大写“d^”
4.删除从光标所在行到文件末尾行
在通常模式下输入大写“dG”
5.删除指定范围内全部行
例:删除10到15行的全部内容 在通常模式下输入“:10,15d”回车
6.把正在编辑的文件另存为新文件
例:把正在编辑的文件另存为到“/root/”下面并保存为1.txt 在通常模式下输入“:w /root/1.txt” 例:把正在编辑的文件的第10行到第15行另存为1.txt并保存到root目录下在通常模式下输入“:10,15 w /root/1.txt”
7.把其它文件的内容导入到正在编辑的文件的光标所在处
例:把“/root/1.txt” 文件的内容,导入到下在编辑的文件的第10行下面 首先在通常模式下按“10G”把光标定位到第10行 而后按“o”小写,当前行的下面另起一行,并进入插入模式 最后按键盘上的返回到通常模式,再输入“:r /root/1.txt”回车
8.正在编辑文件时,不退出文件仍能够运行linux命令
列:我下在编辑一个文件,但这时候我想查看“/root/1.txt” 文件的内容,可是我不想退出我正在编辑的文件,那么咱们能够这样 在编辑模式下输入“:! cat /root/1.txt”
9.把命令的执行结果导入到正在编辑的文件的光标所在处
这题咱们能够结合上面两题,在通常模式下输入“:r ! cat /root/1.txt”
10.查找替换的功能使用
例:在10到15行的行首增长“#” 在通常模式下输入“:10,15s/^/#/” 例:在10到15行的行首去掉“#” 在通常模式下输入“:10,15s/^#//” 例:在10到15行的行首增长“//” 在通常模式下输入“:10,15s/^////”或者“:10,15s@^@//@”或者“:10,15s#^#//#”
注意:在上面全部命令的最后面均可以加g或者c一块儿配合使用,g的意思是行中出现的全部指定字符都替换,可是若是加了g那么前面就不能出现位置定义字符,反以前面出现的位置定义字符,那么后面就不能够出现g。在后面加c能够跟用户交互,在查找到符合命令的字符提示用户是否替换,须要用户确认,不然不须要确认
11.把输入的指定字符替换为指定的字符
例:在编辑一个文档的时候,我要频繁的输入“abcdefghijklmnopqrstuvwxyz”这样的连续字符串,这时候我想只输入一个或者一串指定字符就能够替换为刚才的字符,好比我指定输入“aming”系统就会自动把“aming”替换成“abcdefghijklmnopqrstuvwxyz” 在通常模式下输入“:ab aming abcdefghijklmnopqrstuvwxyz”而后回车,再进入编辑模式,当你输入“aming”的时候就会发现自动替换成了“abcdefghijklmnopqrstuvwxyz”
12.快捷键的定义
例:我想在通常模式下按键盘上的ctrl+b快捷键,会自动在光标所在行的行首插入“#”号,而后自动退出到通常模式 在通常模式下输入“:map ctrl+v ctrl+b I # ”而后回车,这时候在通常模式按键盘上的ctrl+b的时候就会在光标所在的行首插入“#”号了
注意:命令中ctrl+v和ctrl+b是键盘上的组合键,不是输入进去的字符,是须要按的组合键,其中第一个ctrl+v就照按,第二个ctrl+b是要定义的快捷键,根据本身须要的设置按。而后“I”的意思就是通常模式下的“I”进入插入模式并将光标移动到行首,而后接着输入“#”号,后面“”的意思是退出编辑模式
13.同进编辑两个文件或者
例:我现正在编辑1.txt文件,而后我想再打开root目录下的2.txt同时编辑,并把窗口上下水平分隔,一块儿显示 在通常模式下输入“:new /root/2.txt”
例:我现正在编辑1.txt文件,而后我想再打开root目录下的2.txt同时编辑,并把窗口左右垂直分隔,一块儿显示 在通常模式下输入“:vsplit /root/2.txt”
注意:在通常模式下按“ctrl+w”组合键,再按左右,或者上下方向键,能够在不一样窗口之间切换若是在通常模式下输入“:only”那么只保留当前正在编辑的窗口,其它全关闭
15.在vim查找关键字时不区分大小写
在通常模式下输入“:set ic” 若是想取消就输入“:set noic”
16.如何把文件设置成只读文件,只有强制保存时才能保存
在通常模式下输入“:set readonly”
17.把文件恢复到打开时的状态
在通常模式下输入“:e!”
18.配置文件的使用 以上那么多操做,像设置忽略大小写,设定快捷键,设定自动替换,等一些操做,当电脑重启后就没有了。这时候咱们能够把这些命令写入配置文件,这样电脑重启后仍是可使用,咱们有两种方法 第一种:全部用户都统一 修改“/etc/vimrc”文件,在末尾加入须要设置的命令,就是我红色标注的部分 第二种:只对当前用户 修改用户家目录下的“.vimrc”文件,注意有个点,这是隐藏文件,通常用户家下没有,须要本身手工建立